QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#338905 | #7979. 棋盘 | Harry27182 | 100 ✓ | 293ms | 3740kb | C++14 | 1.9kb | 2024-02-26 14:37:05 | 2024-02-26 14:37:06 |
Judging History
answer
#include<bits/stdc++.h>
#define int long long
#define i128 __int128
using namespace std;
int pw[17],k,q,x,y,vis[1005];string s;
struct Bigint{
int a[7];
Bigint(int x=0)
{
a[0]=x;
for(int i=1;i<7;i++) a[i]=0;
}
int& operator [](int w){return a[w];}
void init(string s)
{
reverse(s.begin(),s.end());
for(int i=0;i<7;i++) a[i]=0;
for(int i=0;i<(int)s.size();i++)
a[i/15]+=pw[i%15]*(s[i]-'0');
}
void print()
{
for(int i=6;i>=0;i--)cout<<a[i]<<' ';
cout<<'\n';
}
bool check()
{
for(int i=0;i<7;i++)if(a[i])return 1;
return 0;
}
}a,f[505];
Bigint operator + (Bigint a,Bigint b)
{
Bigint c;
for(int i=0;i<7;i++)c[i]=a[i]+b[i];
for(int i=0;i<6;i++)c[i+1]+=c[i]/pw[15],c[i]%=pw[15];
return c;
}
Bigint operator - (Bigint a,Bigint b)
{
Bigint c;
for(int i=0;i<7;i++)c[i]=a[i]-b[i];
for(int i=0;i<6;i++)if(c[i]<0)c[i]+=pw[15],c[i+1]--;
return c;
}
bool operator >=(Bigint a,Bigint b)
{
for(int i=6;i>=0;i--)if(a[i]!=b[i])return a[i]>b[i];
return 1;
}
signed main()
{
//freopen("chess.in","r",stdin);
//freopen("chess.out","w",stdout);
cin.tie(0)->sync_with_stdio(0);
cin>>k>>q>>x>>y;pw[0]=1;
for(int i=1;i<=15;i++)pw[i]=pw[i-1]*10;
f[1][0]=1;f[2][0]=2;
for(int i=3;i<=480;i++)f[i]=f[i-1]+f[i-2];
int lim=960;
cout<<lim<<'\n';
cout<<1<<' '<<1<<'\n';
cout<<1<<' '<<2<<'\n';
cout<<2<<' '<<1<<'\n';
cout<<2<<' '<<2<<'\n';
int x=2,y=2,tp=0;
for(int i=3;i<=480;i++)
{
if(tp==1)y++,cout<<x-1<<' '<<y<<'\n'<<x<<' '<<y<<'\n',tp=0;
else x++,cout<<x<<' '<<y-1<<'\n'<<x<<' '<<y<<'\n',tp=1;
}
while(q--)
{
cin>>s;a.init(s);
for(int i=1;i<=lim;i++)vis[i]=0;
for(int i=480;i>=1;i--)
{
if(a>=f[i])
{
a=a-f[i];
vis[i*2]=1;
}
}
for(int i=1;i<=lim;i++)cout<<vis[i];cout<<'\n';
}
return 0;
}
详细
Subtask #1:
score: 5
Accepted
Test #1:
score: 5
Accepted
time: 23ms
memory: 3720kb
input:
3 999 1000 340 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 ...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Subtask #2:
score: 10
Accepted
Test #2:
score: 10
Accepted
time: 237ms
memory: 3656kb
input:
12 10000 1000 340 358908473750 36343501002 904324605639 453955046266 725478753662 218319365131 882878650993 648345848966 474401697383 722377018680 718743783955 748051292505 167886140898 411111004914 327825244967 990026144963 623309580364 970889332700 319445927842 527624602835 453135227321 1153226125...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Test #3:
score: 0
Accepted
time: 223ms
memory: 3692kb
input:
12 10000 1000 340 930556110177 377904923573 36236934395 488122716493 51121341209 392176146788 323693311937 449196823461 336471392319 92713238333 281418059653 761936598942 293730650349 106748001462 609643804851 703543108800 999258707162 376689099489 435462123411 710775118008 45582546742 835557591196 ...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Test #4:
score: 0
Accepted
time: 213ms
memory: 3720kb
input:
12 10000 1000 340 737930395319 182266797635 731674395027 268811900200 40636281734 385606961047 579973266668 244481758021 889308913416 116731076438 760018797175 690646649762 295657481984 860132997501 798927396859 973501342055 371555705903 89078273643 755892420101 664745115837 527923357928 12789900388...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Subtask #3:
score: 10
Accepted
Test #5:
score: 10
Accepted
time: 250ms
memory: 3692kb
input:
100 10000 1000 340 87490023455826213450979333037504606824522062808297739018786336978222089712660133428564103979384831 874900289913204769749000879539227331559680630241808944569515663934025397982898503777823815274323967 8749002899116133353924895735921513229471979456689635148877567298640178774668643967...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Test #6:
score: 0
Accepted
time: 273ms
memory: 3676kb
input:
100 10000 1000 340 8748936149282545611299720421204578485624739530690115026507467181657344327662766924981916612956258303 8714827106557313136171687656546075434718184787427526246530142735325290665843132579235229445895749631 8749002377650837755861570823748389228611868494396845969260163830921683752297192...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Subtask #4:
score: 10
Accepted
Test #7:
score: 10
Accepted
time: 259ms
memory: 3668kb
input:
100 10000 990 310 4083451712318559926139496762164571032902328806667934236880329773320213539959944736095945843081512968 7811890641057562314768022152641517082686481268288006737090208624016586608183953908313798353213188661 97358161226180890688421784730819518002666166790210320310558753031161862165361257...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Test #8:
score: 0
Accepted
time: 258ms
memory: 3608kb
input:
100 10000 990 310 536242740270410789572341652869398338093269589584059146826540461135298742334471009085914940446278287 4201975342869797382342066007535560618192359692007374881623572540610172361008282611340412383037024069 963134484370112575147508066354646119797740257454037562403391582920830075099761880...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Subtask #5:
score: 10
Accepted
Test #9:
score: 10
Accepted
time: 253ms
memory: 3668kb
input:
100 10000 1050 260 8749002899132047697490008908470485461412677723566863434996575047286849703722697797645542008396185599 8749002899132047697490008908470485461412677699052921091826559946707718798046219210886366418022957055 7655377536740541735303757766642121742076255665128332760334129720709510994307378...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Test #10:
score: 0
Accepted
time: 293ms
memory: 3716kb
input:
100 10000 1050 260 8749002899132047697490008908470485461412677723572849745703082425639811996797503692892926808185372671 874900289913204769701566661490981966686019183484759731181812123183820701469425350909196577361887231 87490028991280691115987306153332424033768113943575511927837611721527450026923859...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Subtask #6:
score: 10
Accepted
Test #11:
score: 10
Accepted
time: 262ms
memory: 3592kb
input:
100 10000 1050 240 8749002899132047697490008908470485461412677723572849734285100881333676956761384191490477496469520383 874886939179415873527191365288672777702448917037688119492655525651250910013304087281579324577152991 87490028991320476974900089084704854614126777235728490149522637601883528949454159...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Test #12:
score: 0
Accepted
time: 261ms
memory: 3724kb
input:
100 10000 1050 240 8748869399942302640609859219613849864404711585518072959767189754493152526763381301362784876544131071 8749002898113529709322765865336262617207988643047115548870114300321741770881768540817196765514039295 8749002899132047697490008908470485448242213512826165447361161116479336307579296...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Subtask #7:
score: 20
Accepted
Test #13:
score: 20
Accepted
time: 0ms
memory: 3644kb
input:
100 1 980 260 8749002899132047697490008908470485461309833682610292204604841418296589481615503153703163411103219711
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Test #14:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
100 1 980 260 26140399507039494187363454808469075954177491358550589658445256177636481188801043146566104810349008
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Test #15:
score: 0
Accepted
time: 1ms
memory: 3716kb
input:
100 1 980 260 2916334299201423571746379638671656065302994540964775389402649871877310689655011516150737480170427669
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Test #16:
score: 0
Accepted
time: 1ms
memory: 3716kb
input:
100 1 980 260 133733063818254349335501779590031438654517135520213587361323145147457390997763303065570586431533875
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Test #17:
score: 0
Accepted
time: 1ms
memory: 3740kb
input:
100 1 980 260 9216845717656874712980450562726202415567360565980794777111390850331644813674856981646960226192287360
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Test #18:
score: 0
Accepted
time: 1ms
memory: 3648kb
input:
100 1 980 260 5264952002436106359851318041422054633517706683530105573021775026464088057584242164048188378737906836
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Subtask #8:
score: 25
Accepted
Test #19:
score: 25
Accepted
time: 250ms
memory: 3688kb
input:
100 10000 960 240 8749002899132047697015724510954438324957730968977252383122989921226002617013223698533483281626692607 8749002899132047697490008908470485461412677720507858663971304708923117942496885325656574463725010943 87148271065573131361716885470369961093519598137825155235803895087505468828694702...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct
Test #20:
score: 0
Accepted
time: 253ms
memory: 3612kb
input:
100 10000 960 240 87490028991320476974751875210481089883984606374917376934978638676026103357677379577201035900354559 874900289913204769748997996044817613236382183082659757372611910814364558665649382849850729809805311 87490028979301854287209922417527640508689863212316623120229713820718860216280007473...
output:
960 1 1 1 2 2 1 2 2 3 1 3 2 2 3 3 3 4 2 4 3 3 4 4 4 5 3 5 4 4 5 5 5 6 4 6 5 5 6 6 6 7 5 7 6 6 7 7 7 8 6 8 7 7 8 8 8 9 7 9 8 8 9 9 9 10 8 10 9 9 10 10 10 11 9 11 10 10 11 11 11 12 10 12 11 11 12 12 12 13 11 13 12 12 13 13 13 14 12 14 13 13 14 14 14 15 13 15 14 14 15 15 15 16 14 16 15 15 16 16 16 17 1...
result:
ok correct