Submission #1083886

# Submission time Handle Problem Language Result Execution time Memory
1083886 2024-09-04T12:32:44 Z alexander707070 Mars (APIO22_mars) C++17
0 / 100
1 ms 416 KB
#include<bits/stdc++.h>
#include "mars.h"

using namespace std;

int n;
char t[50][50];
bool vis[50][50];

void dfs(int x,int y){
	vis[x][y]=true;

	if(x>0 and !vis[x-1][y] and t[x-1][y]=='1')dfs(x-1,y);
	if(y>0 and !vis[x][y-1] and t[x][y-1]=='1')dfs(x,y-1);
	if(x<2*n+1 and !vis[x+1][y] and t[x+1][y]=='1')dfs(x+1,y);
	if(y<2*n+1 and !vis[x][y+1] and t[x][y+1]=='1')dfs(x,y+1);
}

string tostr(int x){
	string res="";
	for(int i=0;i<100;i++){
		res.push_back(x%2+'0');
		x/=2;
	}
	return res;
}

string solve(){

	int ans=0;
	for(int i=0;i<2*n+1;i++){
		for(int f=0;f<2*n+1;f++){
			if(t[i][f]=='1' and !vis[i][f]){
				dfs(i,f); ans++;
			}
		}
	}

	return tostr(ans);
}

string process(vector< vector<string> > a, int x, int y, int k, int N){
	n=N;

	int m=2*(n-k-1);
	if(x<m and y<m)return a[0][0];

	for(int i=m;i<=m+1;i++){
		for(int f=m;f<=m+1;f++){
			t[i][f]=a[i-m][f-m][0];
		}
	}

	for(int s=0;s<=2;s++){
		for(int d=0;d<=2;d++){
			int pt=0;

			int diff=min(2*n+1-m-s,2*n+1-m-d);

			for(int i=m+s;i<m+s+diff;i++){
				for(int f=m+d;f<m+d+diff;f++){
					if(s!=2 and d!=2)continue;

					t[i][f]=a[s][d][pt];
					pt++;
				}
			}
		}
	}

	if(k==n-1){
		return solve();
	}else{		
		int pt=0;
		for(int i=m;i<2*n+1;i++){
			for(int f=m;f<2*n+1;f++){
				a[0][0][pt]=t[i][f];
				pt++;
			}
		}

		return a[0][0];
	}
}
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 416 KB Incorrect
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 416 KB Incorrect
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 416 KB Incorrect
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 416 KB Incorrect
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 416 KB Incorrect
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 416 KB Incorrect
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 416 KB Incorrect
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 416 KB Incorrect
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 416 KB Incorrect
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 416 KB Incorrect
2 Halted 0 ms 0 KB -