QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#683915 | #9519. Build a Computer | oqmsac | AC ✓ | 1ms | 3700kb | C++23 | 2.5kb | 2024-10-28 02:34:05 | 2024-10-28 02:34:07 |
Judging History
answer
#include<bits/stdc++.h>
#define ll long long
#define ull unsigned long long
#define ld long double
#define pii pair<ll,ll>
using namespace std;
#pragma GCC optimize(3)
#define N 300005
#define M 1000000007
vector<pii > e[100005];
int pt[100],cnt=1;
int getp(int p)
{
if(pt[p]) return pt[p];
pt[p]=++cnt;
int np=getp(p-1);
e[pt[p]].push_back({np,0});
e[pt[p]].push_back({np,1});
return pt[p];
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int l,r;
cin>>l>>r;
pt[0]=114514;
int l1,l2;
for(l1=0;(1<<l1)<=l;l1++);
for(l2=0;(1<<l2)<=r;l2++);
int p=1,np,sum=0;
for(int i=l1-1;i>=0;i--)
{
if(i==0) np=114514;
else np=++cnt;
//cerr<<p<<endl;
if((1<<i)&l)
{
e[p].push_back({np,1});
p=np;
sum+=(1<<i);
}
else
{
e[p].push_back({np,0});
if(sum+(1<<(i+1))-1<r)
{
e[p].push_back({getp(i),1});
}
p=np;
}
}
if(l==r)
{
cout<<cnt+1<<endl;
for(int i=1;i<=cnt;i++)
{
cout<<e[i].size()<<' ';
for(int j=0;j<e[i].size();j++)
{
if(e[i][j].first==114514)
{
cout<<cnt+1<<' ';
}
else cout<<e[i][j].first<<' ';
cout<<e[i][j].second<<' ';
}
cout<<endl;
}
cout<<0<<endl;
return 0;
}
// cerr<<1;
for(int i=l1;i<l2-1;i++)
{
e[1].push_back({getp(i),1});
}
sum=0;
p=1;
for(int i=l2-1;i>=0;i--)
{
//cerr<<p<<endl;
if(i==0) np=114514;
else np=++cnt;
if((1<<i)&r)
{
e[p].push_back({np,1});
if(sum>l)
{
e[p].push_back({getp(i),0});
}
p=np;
sum+=(1<<i);
}
else
{
e[p].push_back({np,0});
p=np;
}
}
cout<<cnt+1<<endl;
for(int i=1;i<=cnt;i++)
{
cout<<e[i].size()<<' ';
for(int j=0;j<e[i].size();j++)
{
if(e[i][j].first==114514)
{
cout<<cnt+1<<' ';
}
else cout<<e[i][j].first<<' ';
cout<<e[i][j].second<<' ';
}
cout<<endl;
}
cout<<0<<endl;
return 0;
}
这程序好像有点Bug,我给组数据试试?
详细
Test #1:
score: 100
Accepted
time: 1ms
memory: 3624kb
input:
5 7
output:
6 2 2 1 4 1 1 3 0 1 6 1 1 5 1 2 6 1 6 0 0
result:
ok ok
Test #2:
score: 0
Accepted
time: 1ms
memory: 3576kb
input:
10 27
output:
12 2 2 1 7 1 2 3 0 4 1 1 6 1 2 5 0 5 1 2 12 0 12 1 2 12 0 12 1 2 8 1 9 0 1 10 0 2 4 0 4 1 2 11 1 5 0 2 12 1 12 0 0
result:
ok ok
Test #3:
score: 0
Accepted
time: 1ms
memory: 3560kb
input:
5 13
output:
9 2 2 1 5 1 2 3 0 4 1 1 9 1 2 9 0 9 1 2 6 1 7 0 1 8 0 2 4 0 4 1 2 9 1 9 0 0
result:
ok ok
Test #4:
score: 0
Accepted
time: 1ms
memory: 3672kb
input:
1 1000000
output:
39 20 39 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 10 1 11 1 12 1 13 1 14 1 15 1 16 1 17 1 18 1 19 1 20 1 2 39 0 39 1 2 2 0 2 1 2 3 0 3 1 2 4 0 4 1 2 5 0 5 1 2 6 0 6 1 2 7 0 7 1 2 8 0 8 1 2 9 0 9 1 2 10 0 10 1 2 11 0 11 1 2 12 0 12 1 2 13 0 13 1 2 14 0 14 1 2 15 0 15 1 2 16 0 16 1 2 17 0 17...
result:
ok ok
Test #5:
score: 0
Accepted
time: 0ms
memory: 3624kb
input:
1 1
output:
2 1 2 1 0
result:
ok ok
Test #6:
score: 0
Accepted
time: 1ms
memory: 3640kb
input:
7 9
output:
7 2 2 1 4 1 1 3 1 1 7 1 1 5 0 1 6 0 2 7 1 7 0 0
result:
ok ok
Test #7:
score: 0
Accepted
time: 1ms
memory: 3628kb
input:
3 7
output:
6 2 2 1 3 1 1 6 1 2 4 1 5 0 2 6 1 6 0 2 6 0 6 1 0
result:
ok ok
Test #8:
score: 0
Accepted
time: 1ms
memory: 3624kb
input:
1 5
output:
5 3 5 1 2 1 3 1 2 5 0 5 1 1 4 0 2 5 1 5 0 0
result:
ok ok
Test #9:
score: 0
Accepted
time: 1ms
memory: 3628kb
input:
1 4
output:
5 3 5 1 2 1 3 1 2 5 0 5 1 1 4 0 1 5 0 0
result:
ok ok
Test #10:
score: 0
Accepted
time: 1ms
memory: 3700kb
input:
8 9
output:
8 2 2 1 5 1 1 3 0 1 4 0 1 8 0 1 6 0 1 7 0 1 8 1 0
result:
ok ok
Test #11:
score: 0
Accepted
time: 1ms
memory: 3628kb
input:
7 51
output:
13 4 2 1 4 1 7 1 8 1 1 3 1 1 13 1 2 5 0 5 1 2 6 0 6 1 2 13 0 13 1 2 4 0 4 1 2 9 1 7 0 1 10 0 1 11 0 2 12 1 6 0 2 13 1 13 0 0
result:
ok ok
Test #12:
score: 0
Accepted
time: 1ms
memory: 3580kb
input:
51 79
output:
16 2 2 1 10 1 1 3 1 2 4 0 5 1 2 8 0 6 1 2 6 0 6 1 2 7 0 7 1 2 16 0 16 1 1 9 1 1 16 1 1 11 0 1 12 0 2 13 1 5 0 2 14 1 6 0 2 15 1 7 0 2 16 1 16 0 0
result:
ok ok
Test #13:
score: 0
Accepted
time: 1ms
memory: 3636kb
input:
92 99
output:
15 2 2 1 9 1 1 3 0 1 4 1 1 5 1 1 6 1 2 7 0 8 1 2 15 0 15 1 2 15 0 15 1 1 10 1 1 11 0 1 12 0 1 13 0 2 14 1 8 0 2 15 1 15 0 0
result:
ok ok
Test #14:
score: 0
Accepted
time: 1ms
memory: 3616kb
input:
27 36
output:
13 2 2 1 8 1 1 3 1 2 4 0 5 1 1 7 1 2 6 0 6 1 2 13 0 13 1 1 13 1 1 9 0 1 10 0 2 11 1 5 0 1 12 0 1 13 0 0
result:
ok ok
Test #15:
score: 0
Accepted
time: 1ms
memory: 3684kb
input:
55 84
output:
17 2 2 1 10 1 1 3 1 2 4 0 5 1 1 8 1 2 6 0 6 1 2 7 0 7 1 2 17 0 17 1 1 9 1 1 17 1 1 11 0 2 12 1 13 0 1 14 0 2 5 0 5 1 2 15 1 6 0 1 16 0 1 17 0 0
result:
ok ok
Test #16:
score: 0
Accepted
time: 1ms
memory: 3616kb
input:
297208 929600
output:
57 2 2 1 37 1 2 3 0 4 1 2 21 0 5 1 2 5 0 5 1 2 6 0 6 1 2 7 0 7 1 2 8 0 8 1 2 9 0 9 1 2 10 0 10 1 2 11 0 11 1 2 12 0 12 1 2 13 0 13 1 2 14 0 14 1 2 15 0 15 1 2 16 0 16 1 2 17 0 17 1 2 18 0 18 1 2 19 0 19 1 2 20 0 20 1 2 57 0 57 1 1 22 1 2 23 0 7 1 2 24 0 8 1 2 25 0 9 1 1 26 1 ...
result:
ok ok
Test #17:
score: 0
Accepted
time: 1ms
memory: 3576kb
input:
45728 589156
output:
54 5 2 1 31 1 33 1 34 1 35 1 2 3 0 4 1 1 18 1 2 5 0 5 1 2 6 0 6 1 2 7 0 7 1 2 8 0 8 1 2 9 0 9 1 2 10 0 10 1 2 11 0 11 1 2 12 0 12 1 2 13 0 13 1 2 14 0 14 1 2 15 0 15 1 2 16 0 16 1 2 17 0 17 1 2 54 0 54 1 1 19 1 2 20 0 7 1 2 21 0 8 1 1 22 1 2 23 0 10 1 1 24 1 2 25 0 12 1 1 26 ...
result:
ok ok
Test #18:
score: 0
Accepted
time: 1ms
memory: 3568kb
input:
129152 138000
output:
47 2 2 1 28 1 1 3 1 1 4 1 1 5 1 1 6 1 1 7 1 2 8 0 9 1 2 19 0 10 1 2 10 0 10 1 2 11 0 11 1 2 12 0 12 1 2 13 0 13 1 2 14 0 14 1 2 15 0 15 1 2 16 0 16 1 2 17 0 17 1 2 18 0 18 1 2 47 0 47 1 2 20 0 11 1 1 21 1 2 22 0 13 1 2 23 0 14 1 2 24 0 15 1 2 25 0 16 1 2 26 0 17 1 2 27 0 18 ...
result:
ok ok
Test #19:
score: 0
Accepted
time: 1ms
memory: 3620kb
input:
245280 654141
output:
56 3 2 1 33 1 37 1 1 3 1 1 4 1 2 5 0 6 1 1 20 1 2 7 0 7 1 2 8 0 8 1 2 9 0 9 1 2 10 0 10 1 2 11 0 11 1 2 12 0 12 1 2 13 0 13 1 2 14 0 14 1 2 15 0 15 1 2 16 0 16 1 2 17 0 17 1 2 18 0 18 1 2 19 0 19 1 2 56 0 56 1 1 21 1 1 22 1 1 23 1 1 24 1 2 25 0 12 1 2 26 0 13 1 2 27 0 14 1 ...
result:
ok ok
Test #20:
score: 0
Accepted
time: 1ms
memory: 3568kb
input:
202985 296000
output:
52 2 2 1 34 1 1 3 1 2 4 0 5 1 2 20 0 6 1 2 6 0 6 1 2 7 0 7 1 2 8 0 8 1 2 9 0 9 1 2 10 0 10 1 2 11 0 11 1 2 12 0 12 1 2 13 0 13 1 2 14 0 14 1 2 15 0 15 1 2 16 0 16 1 2 17 0 17 1 2 18 0 18 1 2 19 0 19 1 2 52 0 52 1 2 21 0 7 1 1 22 1 1 23 1 2 24 0 10 1 2 25 0 11 1 2 26 0 12 1 1...
result:
ok ok
Test #21:
score: 0
Accepted
time: 1ms
memory: 3564kb
input:
438671 951305
output:
57 2 2 1 36 1 1 3 1 2 4 0 5 1 1 21 1 2 6 0 6 1 2 7 0 7 1 2 8 0 8 1 2 9 0 9 1 2 10 0 10 1 2 11 0 11 1 2 12 0 12 1 2 13 0 13 1 2 14 0 14 1 2 15 0 15 1 2 16 0 16 1 2 17 0 17 1 2 18 0 18 1 2 19 0 19 1 2 20 0 20 1 2 57 0 57 1 2 22 0 7 1 1 23 1 1 24 1 2 25 0 10 1 2 26 0 11 1 2 27 ...
result:
ok ok
Test #22:
score: 0
Accepted
time: 0ms
memory: 3628kb
input:
425249 739633
output:
56 2 2 1 36 1 1 3 1 2 4 0 5 1 2 21 0 6 1 2 6 0 6 1 2 7 0 7 1 2 8 0 8 1 2 9 0 9 1 2 10 0 10 1 2 11 0 11 1 2 12 0 12 1 2 13 0 13 1 2 14 0 14 1 2 15 0 15 1 2 16 0 16 1 2 17 0 17 1 2 18 0 18 1 2 19 0 19 1 2 20 0 20 1 2 56 0 56 1 1 22 1 1 23 1 1 24 1 1 25 1 1 26 1 2 27 0 12 1 1 ...
result:
ok ok
Test #23:
score: 0
Accepted
time: 1ms
memory: 3560kb
input:
551207 961718
output:
57 2 2 1 38 1 1 3 0 2 4 0 5 1 2 22 0 6 1 2 6 0 6 1 2 7 0 7 1 2 8 0 8 1 2 9 0 9 1 2 10 0 10 1 2 11 0 11 1 2 12 0 12 1 2 13 0 13 1 2 14 0 14 1 2 15 0 15 1 2 16 0 16 1 2 17 0 17 1 2 18 0 18 1 2 19 0 19 1 2 20 0 20 1 2 21 0 21 1 2 57 0 57 1 2 23 0 7 1 1 24 1 1 25 1 2 26 0 10 1 1...
result:
ok ok
Test #24:
score: 0
Accepted
time: 1ms
memory: 3584kb
input:
114691 598186
output:
55 4 2 1 31 1 35 1 36 1 1 3 1 1 4 1 2 5 0 6 1 2 19 0 7 1 2 7 0 7 1 2 8 0 8 1 2 9 0 9 1 2 10 0 10 1 2 11 0 11 1 2 12 0 12 1 2 13 0 13 1 2 14 0 14 1 2 15 0 15 1 2 16 0 16 1 2 17 0 17 1 2 18 0 18 1 2 55 0 55 1 2 20 0 8 1 2 21 0 9 1 2 22 0 10 1 2 23 0 11 1 2 24 0 12 1 2 25 0 13 1 ...
result:
ok ok
Test #25:
score: 0
Accepted
time: 0ms
memory: 3640kb
input:
234654 253129
output:
49 2 2 1 32 1 1 3 1 1 4 1 1 5 0 2 6 0 7 1 1 20 1 2 8 0 8 1 2 9 0 9 1 2 10 0 10 1 2 11 0 11 1 2 12 0 12 1 2 13 0 13 1 2 14 0 14 1 2 15 0 15 1 2 16 0 16 1 2 17 0 17 1 2 18 0 18 1 2 19 0 19 1 2 49 0 49 1 2 21 0 9 1 1 22 1 2 23 0 11 1 2 24 0 12 1 1 25 1 2 26 0 14 1 2 27 0 15 1 ...
result:
ok ok
Test #26:
score: 0
Accepted
time: 1ms
memory: 3696kb
input:
554090 608599
output:
55 2 2 1 36 1 1 3 0 1 4 0 1 5 0 2 6 0 7 1 1 22 1 2 8 0 8 1 2 9 0 9 1 2 10 0 10 1 2 11 0 11 1 2 12 0 12 1 2 13 0 13 1 2 14 0 14 1 2 15 0 15 1 2 16 0 16 1 2 17 0 17 1 2 18 0 18 1 2 19 0 19 1 2 20 0 20 1 2 21 0 21 1 2 55 0 55 1 1 23 1 1 24 1 2 25 0 11 1 1 26 1 2 27 0 13 1 2 28...
result:
ok ok
Extra Test:
score: 0
Extra Test Passed