QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#667020 | #9518. 观虫我 (旧版数据) | DaiRuiChen007 | 0 | 0ms | 0kb | C++17 | 1.2kb | 2024-10-22 20:46:46 | 2024-10-22 21:45:47 |
Judging History
answer
#include<bits/stdc++.h>
#define ui unsigned int
#define ull unsigned long long
using namespace std;
namespace IO {
int ow,olim=(1<<23)-100;
char buf[1<<21],*p1=buf,*p2=buf,obuf[1<<23];
#define gc() (p1==p2&&(p2=(p1=buf)+fread(buf,1,1<<21,stdin),p1==p2)?EOF:*p1++)
ui read() {
ui x=0; char c=gc();
while(!isdigit(c)) c=gc();
while(isdigit(c)) x=x*10+(c^48),c=gc();
return x;
}
char getc() {
char c=gc();
while(c!='!'&&c!='?') c=gc();
return c;
}
void flush() {
fwrite(obuf,ow,1,stdout),ow=0;
}
void putc(char c) {
obuf[ow++]=c;
if(ow>=olim) flush();
}
#undef gc
}
ull f0[15628][1<<8],f1[15628][1<<8],f2[15628][1<<8],f3[15628][1<<8];
signed main() {
int N=IO::read(),q=IO::read(),n=0;
while(q--) {
char op=IO::getc();
ui x=IO::read();
ui a=x&255,b=x>>8&255,c=x>>16&255,d=x>>24&255;
if(op=='!') {
ull z=1ull<<(n&63);
for(ui t=a;t<256;t=(t+1)|a) f0[n>>6][t]^=z;
for(ui t=b;t<256;t=(t+1)|b) f1[n>>6][t]^=z;
for(ui t=c;t<256;t=(t+1)|c) f2[n>>6][t]^=z;
for(ui t=d;t<256;t=(t+1)|d) f3[n>>6][t]^=z;
++n;
} else {
ull s=0;
for(int i=0;i<=(n>>6);++i) s^=f0[i][a]&f1[i][b]&f2[i][c]&f3[i][d];
IO::putc('0'+__builtin_parityll(s)),IO::putc('\n');
}
}
IO::flush();
return 0;
}
详细
Subtask #1:
score: 0
Time Limit Exceeded
Test #1:
score: 0
Time Limit Exceeded
input:
24 1000000 ! 9475137 ! 4501536 ? 14277831 ? 16695039 ? 5723102 ? 6093887 ? 3014539 ! 475969 ? 12500973 ! 8750136 ? 15617895 ! 4589313 ! 152300 ? 3612579 ? 15248179 ! 764162 ! 4461105 ? 7274495 ? 13299697 ! 8388872 ? 13490383 ! 3875594 ! 9439685 ? 16776189 ! 6443172 ? 13864879 ! 395691 ? 7142271 ? 16...
output:
result:
Subtask #2:
score: 0
Time Limit Exceeded
Test #11:
score: 0
Time Limit Exceeded
input:
26 1000000 ! 18006034 ? 66957270 ! 2133064 ! 147618 ! 34621442 ? 49715575 ? 62879287 ! 18620682 ? 67073751 ! 62941186 ! 7634532 ? 67100031 ? 12517237 ! 4804997 ? 65991126 ! 138275 ? 65722687 ? 66043391 ! 19147234 ? 45743743 ! 2242648 ! 44378336 ? 48226020 ! 34341926 ! 665045 ? 55433083 ! 5554254 ? 4...
output:
result:
Subtask #3:
score: 0
Time Limit Exceeded
Test #21:
score: 0
Time Limit Exceeded
input:
28 1000000 ! 1081468 ! 128476263 ! 67930241 ? 94304031 ! 103698752 ! 19982 ! 198050624 ? 249519591 ? 71286719 ? 255700799 ! 103309888 ! 819340 ! 12852092 ? 124739445 ? 192734967 ! 101320328 ! 117594711 ? 252032927 ! 134267948 ? 262940285 ! 3155972 ? 267876218 ! 41984160 ? 246413294 ? 246824252 ? 163...
output:
result:
Subtask #4:
score: 0
Time Limit Exceeded
Test #31:
score: 0
Time Limit Exceeded
input:
30 1000000 ! 33852274 ? 1017904007 ? 1046413001 ! 151029382 ? 466826079 ? 250568375 ! 6769874 ! 2106474 ? 536832803 ? 209627867 ! 167104971 ? 1048372157 ! 245380745 ! 25174496 ? 819646460 ! 539548800 ! 671358165 ? 402955591 ? 527753201 ! 582494209 ? 862862931 ? 938974695 ? 263672827 ? 366968669 ? 87...
output:
result:
Subtask #5:
score: 0
Time Limit Exceeded
Test #41:
score: 0
Time Limit Exceeded
input:
32 1000000 ! 2474971548 ! 348268033 ? 1055293046 ? 3382525679 ? 1805515707 ? 3210332902 ? 2805668987 ? 4025974780 ! 2217771280 ! 176949664 ! 4213841344 ! 1477473321 ? 3150869759 ? 2127418041 ! 1610631720 ! 3624477314 ! 2288149532 ! 70909964 ! 40117153 ! 1343751456 ? 3758095615 ! 513059275 ! 31956816...