QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#401421#4327. Šeširido_while_true100 ✓358ms274720kbC++202.5kb2024-04-28 17:36:092024-04-28 17:36:09

Judging History

你现在查看的是最新测评结果

  • [2024-04-28 17:36:09]
  • 评测
  • 测评结果:100
  • 用时:358ms
  • 内存:274720kb
  • [2024-04-28 17:36:09]
  • 提交

answer

#include<cstdio>
#include<vector>
#include<queue>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<ctime>
#include<random>
#include<array>
#include<assert.h>
#define pb emplace_back
#define mp make_pair
#define fi first
#define se second
#define dbg(x) cerr<<"In Line "<< __LINE__<<" the "<<#x<<" = "<<x<<'\n'
#define dpi(x,y) cerr<<"In Line "<<__LINE__<<" the "<<#x<<" = "<<x<<" ; "<<"the "<<#y<<" = "<<y<<'\n'
#define DE(fmt,...) fprintf(stderr, "Line %d : " fmt "\n",__LINE__,##__VA_ARGS__)
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int,int>pii;
typedef pair<ll,int>pli;
typedef pair<ll,ll>pll;
typedef pair<int,ll>pil;
typedef vector<int>vi;
typedef vector<ll>vll;
typedef vector<pii>vpii;
typedef vector<pll>vpll;
template<typename T>T cmax(T &x, T y){return x=x>y?x:y;}
template<typename T>T cmin(T &x, T y){return x=x<y?x:y;}
template<typename T>
T &read(T &r){
	r=0;bool w=0;char ch=getchar();
	while(ch<'0'||ch>'9')w=ch=='-'?1:0,ch=getchar();
	while(ch>='0'&&ch<='9')r=r*10+(ch^48),ch=getchar();
	return r=w?-r:r;
}
template<typename T1,typename... T2>
void read(T1 &x,T2& ...y){read(x);read(y...);}
inline int bit(int x){return 1<<x;}
int n;
int d[(1<<18)*2+10],et;
vpii eg[(1<<18)*2+10];
int vis[4000010],head[(1<<18)*2+10];
void adde(int S,int T){
	++d[S];++d[T];++et;
	eg[S].pb(T,et);eg[T].pb(S,et);
}
int U;
void dfs(int x){
	for(int &i=head[x];i<(int)eg[x].size();i++){
		int v=eg[x][i].fi,id=eg[x][i].se;
		if(!vis[id]){
			vis[id]=1;
			if(x!=U&&v!=U){
				int p=x,q=v;
				if(p>=bit(n))p-=bit(n);
				if(q>=bit(n))q-=bit(n);
				int t=(p^q);
				if(p&t)vis[id]=1;
				else vis[id]=2;
			}
			dfs(v);
		}
	}
}
int ca(int S,int k){
	return (S&(bit(k-1)-1))|((S>>k)<<(k-1));
}
int a[19][(1<<18)+10];
signed main(){
//	#ifdef do_while_true
//		assert(freopen("hat.in","r",stdin));
//		assert(freopen("hat.out","w",stdout));
//	#endif
	read(n);
	for(int S=0;S<bit(n);S++){
		for(int i=1;i<=n;i++)if(bit(i-1)&S){
			int T=S^bit(i-1);
			adde(S,T+bit(n));
		}
	}
	U=2*bit(n);
	for(int i=0;i<bit(n);i++){
		if(d[i]&1)adde(U,i);
		if(d[i+bit(n)]&1)adde(U,i+bit(n));
	}
	for(int i=0;i<=2*bit(n);i++)dfs(i);
	int tot=0;
	for(int S=0;S<bit(n);S++){
		for(int i=1;i<=n;i++)if(bit(i-1)&S){
			++tot;
			a[i][ca(S,i)]=vis[tot];
		}
	}
	for(int i=1;i<=n;i++,puts(""))
		for(int j=0;j<bit(n-1);j++)
			putchar('A'+a[n-i+1][j]);
    #ifdef do_while_true
//		cerr<<'\n'<<"Time:"<<1.0*clock()/CLOCKS_PER_SEC*1000<<" ms"<<'\n';
	#endif
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Subtask #1:

score: 7
Accepted

Test #1:

score: 7
Accepted
time: 2ms
memory: 11840kb

input:

4

output:

CCBBCCCC
BBCCBBCC
CCBBCCBB
BBCBBBCB

result:

ok good plan!

Subtask #2:

score: 7
Accepted

Test #2:

score: 7
Accepted
time: 0ms
memory: 11884kb

input:

5

output:

CBCCBCCBCCCCCBCC
BCBBCBCCBCBBCCBC
CBCCBBCBCBCCBBCC
CCBCCCBCBCBBCCBB
BBCBBBCBCBCCBBCB

result:

ok good plan!

Subtask #3:

score: 7
Accepted

Test #3:

score: 7
Accepted
time: 2ms
memory: 13772kb

input:

6

output:

CCBCCCCCBBCCBBBBCCCCCCCBCCCCCCCC
BBCBBBBBCCBCCBCCBBCBBBBBCCBCCBCC
CCBBCCCCBBBBBCBCCCBBCCCCBBBBBCBC
BBCCBBCBCBCCBBCBBBCCBBCBCBCCBBCB
CCBBCCBCBCBBCCBBCCBBCCBCBCBBCCBB
BBCBBBCBCBCCBBCBBBCBBBCBCBCCBBCB

result:

ok good plan!

Subtask #4:

score: 7
Accepted

Test #4:

score: 7
Accepted
time: 0ms
memory: 16028kb

input:

7

output:

CBCCBCCBCCCCCBCCBCCBCBBCCBBCCCCBCCCCCCCCCCCCBCCCCCBCCCCBBCCCCBCC
BCBBCBBCBBBBBCBBCBCCBCCBCCCBBCCCBCBBCBBCBBBCCBBBCBCCBCCCCCCBCCBC
CBCCBCCBCCCCCBCCBBCBBBBBCBBCCBCBCBCCBCCBCCCCBCBCBBCBCBBBBCBCCBCC
BCBBCBCCBCBBCCBCCCBCCBCCBBCBBCBCBCBBCCBCBCBBCBCBCCBBBCCCCBBBBCBC
CBCCBBCBCBCCBBCCBBCBBBCBCBCCCBCBCBCCBBCB...

result:

ok good plan!

Subtask #5:

score: 7
Accepted

Test #5:

score: 7
Accepted
time: 2ms
memory: 16032kb

input:

8

output:

CCBCCCCCBCCCCBBCCCCCCCCCCCCCCCCCBBCBBBBBCCBBCCCCBBBBBBBCBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCBCCBCCBCCCCCCCCCCCCCCCBCCCCCCCCCCCCCCCC
BBCBBBBBCBBCBBCBBBBBBBBBBBBBBBBBCCBCCCCCBCCCCBBCCBCCBCCBCCCCCBCCBBCBBBBBCBBCBBCBBBBBBBBBBBBBBBBBCCBCCCCCBCCCCBBCCBCCBCCBCCCCCBCC
CCBCCCCCBBCBBCBBCCCCCCCBCCCCCCCCBBBBBBBBBB...

result:

ok good plan!

Subtask #6:

score: 7
Accepted

Test #6:

score: 7
Accepted
time: 0ms
memory: 16124kb

input:

9

output:

CBCCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCCCCCCCCCBBCCCCCCBCCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCBBCBCCBBCCBCBBCCBBCBCCBBCCBCCBCCCCCCCCCCBBCCCCBCCCCCCCCCBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCCBCCBCBBCCCCCBCCCCCBCBCCCCCCBCCBCCCCCCCCCCBBCCCCBBCCBCBBCCCCCBCCCCCBCCCCBBCCCCBCC
BCBBCBBCBBBBBCBBCBBCBCCBBBBBCBBCBBBBBBBBBCC...

result:

ok good plan!

Subtask #7:

score: 7
Accepted

Test #7:

score: 7
Accepted
time: 3ms
memory: 18448kb

input:

10

output:

CCBCCCCCBCCCCBBCCCCCCCCCCCCCCCCCBCCBCBBCCCBCCCCCCBBCBCCCBCCBCBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBBCBBBBBCBBBBCCBBBBBBBBBBBBBBBBBCCBCCCCCBBCCBBBBCCCCCCCBCCCCCCCCBBBBBBBBBBBBBBBBBBBBBBBBBCBBCBBCBBBBBBBBBBBBBBBCBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC...

result:

ok good plan!

Subtask #8:

score: 7
Accepted

Test #8:

score: 7
Accepted
time: 4ms
memory: 18836kb

input:

11

output:

CBCCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCCCCCCCCCBBCCCCCCBCCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCBBCBCCBBCCBCBBCCCCCCCCCCCCCCBCCBCCBCCCCCCCCCCCBCCCCCCCCCBBCCCCCCCCCCCCCCCCCCCCCCBBCBCCBBCCBCCBCCCCCCBBCCBBCBCCCCBCCCCCBBCCCCBCCBCCBCCCCCCCCCCCBCCCCCBBCCBBCBCCCCBCCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCBBCBCCBBCCBCBBCCCCCCCCCCCCC...

result:

ok good plan!

Subtask #9:

score: 7
Accepted

Test #9:

score: 7
Accepted
time: 6ms
memory: 22736kb

input:

12

output:

CCBCCCCCBCCCCBBCCCCCCCCCCCCCCCCCBCCBCBBCCCBCCCCCCBBCBCCCBCCBCBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCCBCBBCCBBCBCCBCBBCBCCBBCCBCBBCCCBCCCCCBCCCCBBCCCCCCCCCCCCCCCCCCBBCBCCBBCCBCBBCBCCBCBBCCCBCCCCCBCCBCBBCCBBCBCCCCBBCBCCBBCCBCBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC...

result:

ok good plan!

Subtask #10:

score: 7
Accepted

Test #10:

score: 7
Accepted
time: 0ms
memory: 24388kb

input:

13

output:

CBCCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCCCCCCCCCBBCCCCCCBCCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCBBCBCCBBCCBCBBCCCCCCCCCCCCCCBCCBCCBCCCCCCCCCCCBCCCCCCCCCBBCCCCCCCCCCCCCCCCCCCCCCBBCBCCBBCCBCCBCCCCCCBBCCBBCBCCCCBCCCCCBBCCCCBCCBCCBCCCCCBBCBCCBCCCCCBBCCCCCCCCCCBCCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCBBCBCCBBCCBCBBCCCCCCCCCCCCC...

result:

ok good plan!

Subtask #11:

score: 6
Accepted

Test #11:

score: 6
Accepted
time: 12ms
memory: 34492kb

input:

14

output:

CCBCCCCCBCCCCBBCCCCCCCCCCCCCCCCCBCCBCBBCCCBCCCCCCBBCBCCCBCCBCBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCCBCBBCCBBCBCCBCBBCBCCBBCCBCBBCCCBCCCCCBCCCCBBCCCCCCCCCCCCCCCCCCBBCBCCBBCCBCBBCBCCBCBBCCCBCCCCCBCCBCBBCCBBCBCCCCBBCBCCBBCCBCBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC...

result:

ok good plan!

Subtask #12:

score: 6
Accepted

Test #12:

score: 6
Accepted
time: 20ms
memory: 42860kb

input:

15

output:

CBCCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCCCCCCCCCBBCCCCCCBCCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCBBCBCCBBCCBCBBCCCCCCCCCCCCCCBCCBCCBCCCCCCCCCCCBCCCCCCCCCBBCCCCCCCCCCCCCCCCCCCCCCBBCBCCBBCCBCCBCCCCCCBBCCBBCBCCCCBCCCCCBBCCCCBCCBCCBCCCCCCCCCCCBCCCCCBBCCBBCBCCCCBCCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCBBCBCCBBCCBCBBCCCCCCCCCCCCC...

result:

ok good plan!

Subtask #13:

score: 6
Accepted

Test #13:

score: 6
Accepted
time: 60ms
memory: 80232kb

input:

16

output:

CCBCCCCCBCCCCBBCCCCCCCCCCCCCCCCCBCCBCBBCCCBCCCCCCBBCBCCCBCCBCBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCCBCBBCCBBCBCCBCBBCBCCBBCCBCBBCCCBCCCCCBCCCCBBCCCCCCCCCCCCCCCCCCBBCBCCBBCCBCBBCBCCBCBBCCCBCCCCCBCCBCBBCCBBCBCCCCBBCBCCBBCCBCBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC...

result:

ok good plan!

Subtask #14:

score: 6
Accepted

Test #14:

score: 6
Accepted
time: 140ms
memory: 109300kb

input:

17

output:

CBCCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCCCCCCCCCBBCCCCCCBCCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCBBCBCCBBCCBCBBCCCCCCCCCCCCCCBCCBCCBCCCCCCBCCCCBCCCCCCCCCBBCCCCCCCCCCCCCCCCCCCCCCBBCBCCBBCCBCCBCCCCCCBBCCBCCBCCCCBCCCCCBBCCCCBCCBCCBCCCCCCBCCCCBCCCCCBBCCBCCBCCCCCBCBCCBCCCCCBCCBCCBCBBCCCCCBCCBCBBCBCCBBCCBCBBCCCCCCCCCCCCC...

result:

ok good plan!

Subtask #15:

score: 6
Accepted

Test #15:

score: 6
Accepted
time: 358ms
memory: 274720kb

input:

18

output:

CCBCCCCCBCCCCBBCCCCCCCCCCCCCCCCCBCCBCBBCCCBCCCCCCBBCBCCCBCCBCBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCCBCBBCCBBCBCCBCBBCBCCBBCCBCBBCCCBCCCCCBCCCCBBCCCCCCCCCCCCCCCCCCBBCBCCBBCCBCBBCBCCBCBBCCCBCCCCCBCCBCBBCCBBCBCCCCBBCBCCBBCCBCBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC...

result:

ok good plan!

Extra Test:

score: 0
Extra Test Passed