Submission #330366

# Submission time Handle Problem Language Result Execution time Memory
330366 2020-11-25T01:31:32 Z YJU Furniture (JOI20_furniture) C++14
100 / 100
430 ms 19920 KB
#include<bits/stdc++.h>
#pragma GCC optimize("unroll-loops,no-stack-protector")
using namespace std;
typedef long long ll;
typedef long double ld;
typedef pair<ll,ll> pll;
const ll MOD=1e9+7;
const ll MOD2=998244353;
const ll N=1e3+5;
const ll K=350;
const ld pi=3.14159265359;
const ll INF=(1LL<<40);
#define SQ(i) ((i)*(i))
#define REP(i,n) for(ll i=0;i<n;i++)
#define REP1(i,n) for(ll i=1;i<=n;i++)
#define pb push_back
#define mp make_pair
#define X first
#define Y second
#define setp setprecision
#define lwb lower_bound
#define SZ(_a) (ll)_a.size()

ll n,m,vis[N][N],c[4*N],x,y,q;

void DFS(ll a,ll b);

void push(ll a,ll b){
	if(vis[a][b]){
		vis[a][b]=0;
		--c[a+b];
		DFS(a,b);
	}
}

bool add(ll a,ll b){
	if(!vis[a][b])return 1;
	if(c[a+b]==1)return 0;
	push(a,b);
	return 1;
}

void DFS(ll a,ll b){
	if(!vis[a-1][b+1]){
		push(a-1,b);
		push(a,b+1);
	}
	if(!vis[a+1][b-1]){
		push(a+1,b);
		push(a,b-1);
	}
}

int main(){
	ios_base::sync_with_stdio(0);cin.tie(0);
	cin>>n>>m;
	REP1(i,n)REP1(j,m)vis[i][j]=1,++c[i+j];
	REP1(i,n)REP1(j,m){
		cin>>x;
		if(x)add(i,j);
	}
	cin>>q;
	while(q--){
		cin>>x>>y;
		cout<<add(x,y)<<"\n";
	}
	return 0;
}

# Verdict Execution time Memory Grader output
1 Correct 1 ms 748 KB Output is correct
2 Correct 2 ms 748 KB Output is correct
3 Correct 3 ms 876 KB Output is correct
4 Correct 3 ms 876 KB Output is correct
5 Correct 4 ms 876 KB Output is correct
6 Correct 4 ms 1004 KB Output is correct
7 Correct 4 ms 1024 KB Output is correct
8 Correct 4 ms 1004 KB Output is correct
9 Correct 4 ms 1004 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 748 KB Output is correct
2 Correct 2 ms 748 KB Output is correct
3 Correct 3 ms 876 KB Output is correct
4 Correct 3 ms 876 KB Output is correct
5 Correct 4 ms 876 KB Output is correct
6 Correct 4 ms 1004 KB Output is correct
7 Correct 4 ms 1024 KB Output is correct
8 Correct 4 ms 1004 KB Output is correct
9 Correct 4 ms 1004 KB Output is correct
10 Correct 11 ms 1260 KB Output is correct
11 Correct 3 ms 748 KB Output is correct
12 Correct 187 ms 12908 KB Output is correct
13 Correct 70 ms 9836 KB Output is correct
14 Correct 348 ms 17220 KB Output is correct
15 Correct 354 ms 17644 KB Output is correct
16 Correct 392 ms 18664 KB Output is correct
17 Correct 396 ms 19436 KB Output is correct
18 Correct 374 ms 19052 KB Output is correct
19 Correct 410 ms 19920 KB Output is correct
20 Correct 336 ms 19820 KB Output is correct
21 Correct 430 ms 19820 KB Output is correct