This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#define f first
#define s second
#define ent '\n'
//#define int long long
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
#pragma GCC optimize("Ofast,unroll-loops,fast-math,O3")
const int dx[]={-1, 1, 0, 0, 0};
const int dy[]={0, 0, 1, -1, 0};
typedef long long ll;
using namespace std;
const int mx=50+12;
const int mod=998244353;
const bool T=1;
bool used[mx][mx];
int c[mx][mx];
void dfs(int x,int y,int n){
used[x][y]=1;
for(int i=0;i<4;i++){
int x1=dx[i]+x;
int y1=dy[i]+y;
if(x1>=0 && y1>=0 && x1<n && y1<n && !used[x1][y1]){
dfs(x1, y1, n);
}
}
}
string gn(int n) {
int cnt = 0;
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
used[i][j] ^= 1;
}
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
if (!used[i][j]){
dfs(i, j, n);
cnt++;
}
}
}
string ans="";
for(int i=0;i<20;i++){
if((cnt&(1<<i))){
ans+='1';
}
else{
ans+='0';
}
}
while(ans.size()<100){
ans+='0';
}
return ans;
}
string process(vector<vector<string> > a,int x,int y,int k,int n){
k++;
for(int i=x;i<=x+2;i++){
for(int j=y;j<=y+2;j++){
int pos=0;
for(int s=i;s<i+2*k-1;s+=2){
for(int f=j;f<j+2*k-1;f+=2){
used[s][f] = (a[i-x][j-y][pos] == '1');
pos++;
}
}
}
}
string ans="";
for(int i=x;i<x+2*k+1;i+=2){
for(int j=y;j<y+2*k+1;j+=2){
ans+=char(used[i][j]+'0');
}
}
while(ans.size() < 100){
ans+='0';
}
if(n==k){
return gn(n * 2 + 1);
}
return ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |