题目背景
译自 Izborne Pripreme 2021 (Croatian IOI/CEOI Team Selection) D1T1。1s,0.5G。
由于本题特殊的 SPJ,将本题的 TL 和 ML 分别改为 10s,2G。但是对于选手程序,本题的时空限制和原题相同。
如果使用压缩包上传答案:将文件分别命名为 jelo-1.out∼jelo-5.out。
题目描述
给定正偶数 N。构造一个最大的集合 S⊆{0,1,⋯,2N−1},使得 ⋃i,j∈S,i<j{i⊕j}=(2∣S∣) 。换言之,在 S 中任意选定 (a,b),(c,d)(a,b,c,d∈S,a<b,c<d,(a,b)=(c,d)),都有 a⊕b=c⊕d 成立。
其中 ⊕ 表示按位异或运算。
输入格式
一行一个正整数 N。
输出格式
第一行一个整数 ∣S∣。
接下来 ∣S∣ 个数描述 S。
提示
对于 100% 的数据,保证 1≤N≤30。
本题共有 5 个测试点,每个测试点有三个评分参数 t1,t2,t3,记 t=∣S∣,则得分计算方式为:
score(t)=⎩⎨⎧2.4⋅t1t2.4+3.6⋅t2−t1t−t16+12⋅t3−t2t−t220t∈[0,t1)t∈[t1,t2)t∈[t2,t3)t∈[t3,2N]
测试点编号 |
N= |
t1= |
t2= |
t3= |
得分 |
1 |
18 |
267 |
283 |
512 |
20 |
2 |
20 |
444 |
462 |
1024 |
3 |
26 |
2019 |
2040 |
8192 |
4 |
28 |
3295 |
3327 |
16384 |
5 |
30 |
5377 |
5430 |
32768 |
【提示】请注意代码长度限制。