#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;
}
pair<int,int> opt(int l,int r,int k, int n){
return {min(l * (2 * n + 1) / (2 * (n - k) + 1), 2 * n), min(2 * n, (r + 1) * (2 * n + 1) / (2 * (n - k) + 1) - 1)};
}
void upd(string s,int i,int j,int k, int n){
auto [tli, tri] = opt(i, i+2*k, k, n);
auto [tlj, trj] = opt(j, j+2*k, k, n);
int pos=0;
for(int i=tli;i<=tri;i++){
for(int j=tlj;j<=trj;j++){
used[i][j] = (s[pos] == '1');
pos++;
}
}
}
string process(vector<vector<string> > a,int x,int y,int k,int n){
k++;
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
upd(a[i][j], x+i, y+j, k-1, n);
}
}
auto [tli, tri] = opt(x, x+2*k, k, n);
auto [tlj, trj] = opt(y, y+2*k, k, n);
string ans="";
for(int i=tli;i<=tri;i++){
for(int j=tlj;j<=trj;j++){
ans += char(used[i][j] + '0');
}
}
while(ans.size() < 100){
ans+='0';
}
if(n==k){
return gn(n * 2 + 1);
}
return ans;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
4288 KB |
Output is correct |
2 |
Correct |
7 ms |
4804 KB |
Output is correct |
3 |
Correct |
6 ms |
4920 KB |
Output is correct |
4 |
Correct |
6 ms |
4384 KB |
Output is correct |
5 |
Correct |
8 ms |
4724 KB |
Output is correct |
6 |
Correct |
5 ms |
3936 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
4288 KB |
Output is correct |
2 |
Correct |
7 ms |
4804 KB |
Output is correct |
3 |
Correct |
6 ms |
4920 KB |
Output is correct |
4 |
Correct |
6 ms |
4384 KB |
Output is correct |
5 |
Correct |
8 ms |
4724 KB |
Output is correct |
6 |
Correct |
5 ms |
3936 KB |
Output is correct |
7 |
Correct |
10 ms |
4688 KB |
Output is correct |
8 |
Correct |
12 ms |
4348 KB |
Output is correct |
9 |
Correct |
12 ms |
4156 KB |
Output is correct |
10 |
Correct |
11 ms |
4424 KB |
Output is correct |
11 |
Correct |
8 ms |
4064 KB |
Output is correct |
12 |
Correct |
12 ms |
4492 KB |
Output is correct |
13 |
Correct |
15 ms |
4520 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
4288 KB |
Output is correct |
2 |
Correct |
7 ms |
4804 KB |
Output is correct |
3 |
Correct |
6 ms |
4920 KB |
Output is correct |
4 |
Correct |
6 ms |
4384 KB |
Output is correct |
5 |
Correct |
8 ms |
4724 KB |
Output is correct |
6 |
Correct |
5 ms |
3936 KB |
Output is correct |
7 |
Correct |
10 ms |
4688 KB |
Output is correct |
8 |
Correct |
12 ms |
4348 KB |
Output is correct |
9 |
Correct |
12 ms |
4156 KB |
Output is correct |
10 |
Correct |
11 ms |
4424 KB |
Output is correct |
11 |
Correct |
8 ms |
4064 KB |
Output is correct |
12 |
Correct |
12 ms |
4492 KB |
Output is correct |
13 |
Correct |
15 ms |
4520 KB |
Output is correct |
14 |
Incorrect |
4 ms |
1072 KB |
invalid len |
15 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
4288 KB |
Output is correct |
2 |
Correct |
7 ms |
4804 KB |
Output is correct |
3 |
Correct |
6 ms |
4920 KB |
Output is correct |
4 |
Correct |
6 ms |
4384 KB |
Output is correct |
5 |
Correct |
8 ms |
4724 KB |
Output is correct |
6 |
Correct |
5 ms |
3936 KB |
Output is correct |
7 |
Correct |
10 ms |
4688 KB |
Output is correct |
8 |
Correct |
12 ms |
4348 KB |
Output is correct |
9 |
Correct |
12 ms |
4156 KB |
Output is correct |
10 |
Correct |
11 ms |
4424 KB |
Output is correct |
11 |
Correct |
8 ms |
4064 KB |
Output is correct |
12 |
Correct |
12 ms |
4492 KB |
Output is correct |
13 |
Correct |
15 ms |
4520 KB |
Output is correct |
14 |
Incorrect |
4 ms |
1072 KB |
invalid len |
15 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
4288 KB |
Output is correct |
2 |
Correct |
7 ms |
4804 KB |
Output is correct |
3 |
Correct |
6 ms |
4920 KB |
Output is correct |
4 |
Correct |
6 ms |
4384 KB |
Output is correct |
5 |
Correct |
8 ms |
4724 KB |
Output is correct |
6 |
Correct |
5 ms |
3936 KB |
Output is correct |
7 |
Correct |
10 ms |
4688 KB |
Output is correct |
8 |
Correct |
12 ms |
4348 KB |
Output is correct |
9 |
Correct |
12 ms |
4156 KB |
Output is correct |
10 |
Correct |
11 ms |
4424 KB |
Output is correct |
11 |
Correct |
8 ms |
4064 KB |
Output is correct |
12 |
Correct |
12 ms |
4492 KB |
Output is correct |
13 |
Correct |
15 ms |
4520 KB |
Output is correct |
14 |
Incorrect |
4 ms |
1072 KB |
invalid len |
15 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
4288 KB |
Output is correct |
2 |
Correct |
7 ms |
4804 KB |
Output is correct |
3 |
Correct |
6 ms |
4920 KB |
Output is correct |
4 |
Correct |
6 ms |
4384 KB |
Output is correct |
5 |
Correct |
8 ms |
4724 KB |
Output is correct |
6 |
Correct |
5 ms |
3936 KB |
Output is correct |
7 |
Correct |
10 ms |
4688 KB |
Output is correct |
8 |
Correct |
12 ms |
4348 KB |
Output is correct |
9 |
Correct |
12 ms |
4156 KB |
Output is correct |
10 |
Correct |
11 ms |
4424 KB |
Output is correct |
11 |
Correct |
8 ms |
4064 KB |
Output is correct |
12 |
Correct |
12 ms |
4492 KB |
Output is correct |
13 |
Correct |
15 ms |
4520 KB |
Output is correct |
14 |
Incorrect |
4 ms |
1072 KB |
invalid len |
15 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
4288 KB |
Output is correct |
2 |
Correct |
7 ms |
4804 KB |
Output is correct |
3 |
Correct |
6 ms |
4920 KB |
Output is correct |
4 |
Correct |
6 ms |
4384 KB |
Output is correct |
5 |
Correct |
8 ms |
4724 KB |
Output is correct |
6 |
Correct |
5 ms |
3936 KB |
Output is correct |
7 |
Correct |
10 ms |
4688 KB |
Output is correct |
8 |
Correct |
12 ms |
4348 KB |
Output is correct |
9 |
Correct |
12 ms |
4156 KB |
Output is correct |
10 |
Correct |
11 ms |
4424 KB |
Output is correct |
11 |
Correct |
8 ms |
4064 KB |
Output is correct |
12 |
Correct |
12 ms |
4492 KB |
Output is correct |
13 |
Correct |
15 ms |
4520 KB |
Output is correct |
14 |
Incorrect |
4 ms |
1072 KB |
invalid len |
15 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
4288 KB |
Output is correct |
2 |
Correct |
7 ms |
4804 KB |
Output is correct |
3 |
Correct |
6 ms |
4920 KB |
Output is correct |
4 |
Correct |
6 ms |
4384 KB |
Output is correct |
5 |
Correct |
8 ms |
4724 KB |
Output is correct |
6 |
Correct |
5 ms |
3936 KB |
Output is correct |
7 |
Correct |
10 ms |
4688 KB |
Output is correct |
8 |
Correct |
12 ms |
4348 KB |
Output is correct |
9 |
Correct |
12 ms |
4156 KB |
Output is correct |
10 |
Correct |
11 ms |
4424 KB |
Output is correct |
11 |
Correct |
8 ms |
4064 KB |
Output is correct |
12 |
Correct |
12 ms |
4492 KB |
Output is correct |
13 |
Correct |
15 ms |
4520 KB |
Output is correct |
14 |
Incorrect |
4 ms |
1072 KB |
invalid len |
15 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
4288 KB |
Output is correct |
2 |
Correct |
7 ms |
4804 KB |
Output is correct |
3 |
Correct |
6 ms |
4920 KB |
Output is correct |
4 |
Correct |
6 ms |
4384 KB |
Output is correct |
5 |
Correct |
8 ms |
4724 KB |
Output is correct |
6 |
Correct |
5 ms |
3936 KB |
Output is correct |
7 |
Correct |
10 ms |
4688 KB |
Output is correct |
8 |
Correct |
12 ms |
4348 KB |
Output is correct |
9 |
Correct |
12 ms |
4156 KB |
Output is correct |
10 |
Correct |
11 ms |
4424 KB |
Output is correct |
11 |
Correct |
8 ms |
4064 KB |
Output is correct |
12 |
Correct |
12 ms |
4492 KB |
Output is correct |
13 |
Correct |
15 ms |
4520 KB |
Output is correct |
14 |
Incorrect |
4 ms |
1072 KB |
invalid len |
15 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
4288 KB |
Output is correct |
2 |
Correct |
7 ms |
4804 KB |
Output is correct |
3 |
Correct |
6 ms |
4920 KB |
Output is correct |
4 |
Correct |
6 ms |
4384 KB |
Output is correct |
5 |
Correct |
8 ms |
4724 KB |
Output is correct |
6 |
Correct |
5 ms |
3936 KB |
Output is correct |
7 |
Correct |
10 ms |
4688 KB |
Output is correct |
8 |
Correct |
12 ms |
4348 KB |
Output is correct |
9 |
Correct |
12 ms |
4156 KB |
Output is correct |
10 |
Correct |
11 ms |
4424 KB |
Output is correct |
11 |
Correct |
8 ms |
4064 KB |
Output is correct |
12 |
Correct |
12 ms |
4492 KB |
Output is correct |
13 |
Correct |
15 ms |
4520 KB |
Output is correct |
14 |
Incorrect |
4 ms |
1072 KB |
invalid len |
15 |
Halted |
0 ms |
0 KB |
- |