QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#119296 | #6669. Mapa | platelet# | 0 | 826ms | 3884kb | C++17 | 2.3kb | 2023-07-05 09:57:28 | 2024-05-31 19:05:11 |
Judging History
answer
#include <bits/stdc++.h>
#define rep(i, l, r) for(int i = (l); i <= (r); i++)
#define per(i, r, l) for(int i = (r); i >= (l); i--)
#define mem(a, b) memset(a, b, sizeof a)
#define For(i, l, r) for(int i = (l), i##e = (r); i < i##e; i++)
#define pb push_back
#define eb emplace_back
#define all(x) (x).begin(), (x).end()
#define SZ(x) int((x).size())
using namespace std;
using ll = long long;
template<class T> inline T& cmin(T& a, const T& b) { if(b < a) a = b; return a; }
template<class T> inline T& cmax(T& a, const T& b) { if(a < b) a = b; return a; }
template<class... Args> void print(Args&&... args) {
((cout << args << ' '), ...);
}
template<class... Args> void println(Args&&... args) {
print(args...), cout << endl;
}
const int P = 1e9 + 7, B = 440;
int x[108], y[108];
int main() {
cin.tie(0)->sync_with_stdio(0);
int T, n;
cin >> T >> n;
if(T == 1) {
mt19937_64 gen;
while(1) {
auto a = gen() % (P - 1) + 1, b = gen() % P;
int buc[B] = {};
rep(i, 1, n) {
cin >> x[i] >> y[i];
buc[(x[i] * a + b) % P % B]++;
}
int mx = 0;
For(i, 0, B) cmax(mx, buc[i]);
if(mx < 2) {
vector<int> ans;
For(i, 0, 30) ans.pb(a >> i & 1);
For(i, 0, 30) ans.pb(b >> i & 1);
For(i, 0, B) ans.pb(buc[i]);
int idx[B] = {};
rep(i, 1, n) idx[(x[i] * a + b) % P % B] = i;
For(i, 0, B) if(idx[i])
For(j, 0, 30) ans.pb(y[idx[i]] >> j & 1);
cout << SZ(ans) << '\n';
for(int i : ans) cout << i;
cout << '\n';
break;
}
}
} else {
int q, foo;
string info;
cin >> q >> foo >> info;
uint64_t a = 0, b = 0;
int ans[B] = {}, p = 0;
For(i, 0, 30) a |= info[p++] - 48 << i;
For(i, 0, 30) b |= info[p++] - 48 << i;
For(i, 0, B) ans[i] = info[p++] - 48;
For(i, 0, B) if(ans[i]) {
ans[i] = 0;
For(j, 0, 30) ans[i] |= info[p++] - 48 << j;
}
while(q--) {
int x;
cin >> x;
cout << ans[(x * a + b) % P % B] << '\n';
}
}
}
详细
Subtask #1:
score: 0
Time Limit Exceeded
Test #1:
score: 83.3333
Acceptable Answer
time: 25ms = 25ms + 0ms
memory: 3656kb,3796kb
input:
1 100 495528311 963488152 269613430 443544124 700489871 792354118 151890319 506569919 180452297 13229948 684464994 543841485 978085128 903812192 238355172 441140842 28061035 783291471 530823766 718942732 936853023 439421263 201361623 226633955 304644844 778868118 864860135 461524170 88300500 6959354...
output:
3500 1011110100101000001100001000010011100010000011111110111001110000000100000001100000000000000000000001110000011000001000000011000000010000000101000000001000010000000001000010001000000001001000101001000100110110000000011000010101000000011100001100010000011100010000000000000000010000010000010000001...
input:
2 100 79 3500 1011110100101000001100001000010011100010000011111110111001110000000100000001100000000000000000000001110000011000001000000011000000010000000101000000001000010000000001000010001000000001001000101001000100110110000000011000010101000000011100001100010000011100010000000000000000010000010000...
output:
310305144 821194635 174780370 903812192 805026231 996046536 439421263 645287342 90686849 20101025 440972097 543841485 176553522 249563964 461524170 348624865 848301562 506569919 306718453 206848250 382805509 278712030 964702808 868944393 493895143 39665197 574757075 441140842 785665865 229376884 551...
result:
points 0.83333333330 ok K = 3500
Test #2:
score: 83.3333
Acceptable Answer
time: 206ms = 206ms + 0ms
memory: 3600kb,3856kb
input:
1 100 743248071 842720888 367650901 130970775 297946283 705168964 771526942 537186020 245003150 707948455 643491261 668001146 311535032 293708068 183828318 18515526 593973840 915870006 102456762 64193833 729806890 839221652 47145974 35682954 668676377 228428310 370700393 569441954 250911162 48980047...
output:
3500 0101111110011010101101111101010100100010011001000111000010010100000000000100000100001001100001010011000000100000000010010000001000001001001000011000000000000100100010001000111000000100001100000001101000001100110000001010000100010000000000000000100000001100100001100100101010001110000000010100010...
input:
2 100 79 3500 0101111110011010101101111101010100100010011001000111000010010100000000000100000100001001100001010011000000100000000010010000001000001001001000011000000000000100100010001000111000000100001100000001101000001100110000001010000100010000000000000000100000001100100001100100101010001110000000...
output:
442563406 97578442 469403815 293708068 138158276 720700065 839221652 674386240 810209830 563527225 259979005 668001146 813899310 943777483 569441954 226088806 825435650 537186020 131383422 83733737 830289758 425793016 858146541 609883097 414389335 407054915 47572024 18515526 276587480 810627636 4972...
result:
points 0.83333333330 ok K = 3500
Test #3:
score: 83.3333
Acceptable Answer
time: 150ms = 150ms + 0ms
memory: 3572kb,3636kb
input:
1 100 770174568 168127255 893508708 185778664 976425263 477317099 287595878 512153851 621600374 418802856 818787535 612197605 796811122 566496677 789841517 873731343 43178468 619503942 597852289 471053284 66112404 635260765 158101403 199253397 680158192 123081916 626776438 29107026 721141470 5177084...
output:
3500 1011110110010100101111010111011111111101000001001011011110100000000010110001000101010000000000100000100000011101011001001100001000110110000011011010000001100100101100000000111000000010010000100100000001100010101000100000000001000000000000000000000000010000000001010000000000001010100000010100001...
input:
2 100 79 3500 1011110110010100101111010111011111111101000001001011011110100000000010110001000101010000000000100000100000011101011001001100001000110110000011011010000001100100101100000000111000000010010000100100000001100010101000100000000001000000000000000000000000010000000001010000000000001010100000...
output:
676203467 418593456 222540092 566496677 487711174 155177230 635260765 19655934 405420089 197948311 16997620 612197605 623431791 654167214 29107026 103769907 951695033 512153851 401411177 839097490 141196222 886472586 767476542 270436089 885084406 492744649 861074271 873731343 744691837 300804222 364...
result:
points 0.83333333330 ok K = 3500
Test #4:
score: 83.3333
Acceptable Answer
time: 13ms = 13ms + 0ms
memory: 3652kb,3624kb
input:
1 100 546594289 9670068 665528790 773039281 266567267 744830423 338924380 918542055 413001686 717894752 786408307 211692098 280986141 432842000 195582858 921321743 412109607 485887870 262421557 244551274 303481411 585109375 922835159 77375674 276669713 485047938 748493209 63888398 37129726 285918022...
output:
3500 0101001011110011100010101001011101101000111111001001110100100000000000001000000010100010010110000100010011010000001100001101010010000000000000101000000011010010010000010000010001001100010100010000000010000010010000101000000010001000100000100000101011000000000100000000010100100100100000100000010...
input:
2 100 79 3500 0101001011110011100010101001011101101000111111001001110100100000000000001000000010100010010110000100010011010000001100001101010010000000000000101000000011010010010000010000010001001100010100010000000010000010010000101000000010001000100000100000101011000000000100000000010100100100100000...
output:
43372101 204611063 352593757 432842000 142147490 891337416 585109375 743309504 647533065 464964608 876089821 211692098 955710889 971589766 63888398 781195091 748872098 918542055 738134414 271774069 559783342 631668225 32245370 502187994 978371138 563783889 900635155 921321743 760555399 270665755 276...
result:
points 0.83333333330 ok K = 3500
Test #5:
score: 83.3333
Acceptable Answer
time: 109ms = 108ms + 1ms
memory: 3540kb,3568kb
input:
1 100 326454605 159474960 11647328 932941462 367166680 626258331 846588658 385992166 148602944 380296908 32123445 521548223 146657758 872883623 78417135 361494853 902204073 975297913 50096537 520296997 687284103 420187394 93781442 87808395 503014564 573344902 720903126 546124141 87676450 646360824 9...
output:
3500 0110111110111010101011100110011100001111100101000111100000110010000010000000001100000100000000011000100010000101000001100000001000000000001100010001110000001001000000000010000000001000010001000000000000000000000000100001010111100000111100001100001001010011100000001000001100100001000011000101000...
input:
2 100 79 3500 0110111110111010101011100110011100001111100101000111100000110010000010000000001100000100000000011000100010000101000001100000001000000000001100010001110000001001000000000010000000001000010001000000000000000000000000100001010111100000111100001100001001010011100000001000001100100001000011...
output:
744601533 267129639 871217352 872883623 255371549 162360942 420187394 62984915 242781986 691399852 480380990 521548223 206206675 214089065 546124141 380557861 669664079 385992166 150840342 413877880 634078816 965530575 770169571 451364705 804171981 524846617 166621075 361494853 603970305 891038427 6...
result:
points 0.83333333330 ok K = 3500
Test #6:
score: 83.3333
Acceptable Answer
time: 202ms = 201ms + 1ms
memory: 3660kb,3824kb
input:
1 100 64333280 212072142 621741906 581061751 485561139 692210649 992259436 287935018 247191279 473618369 757620730 140577613 737479792 180977604 404566245 999575096 265846881 11981569 207666352 505750476 304958822 388901054 389584560 428620342 171809402 115660346 324907936 144402645 844495803 791121...
output:
3500 1111111101110111011100010010010111101000111000100011101101000011100001011001001010001000100000010011000001000000000010001010100000001000000001111000000000010000001100100000100000000000011000000010000000010100000010110000001000001011000110000001000000000010010001001010100000100000000001000010110...
input:
2 100 79 3500 1111111101110111011100010010010111101000111000100011101101000011100001011001001010001000100000010011000001000000000010001010100000001000000001111000000000010000001100100000100000000000011000000010000000010100000010110000001000001011000110000001000000000010010001001010100000100000000001...
output:
925952390 770406569 77034978 180977604 957934192 99668862 388901054 858699296 371495636 28514411 68070922 140577613 781757001 847250666 144402645 346058199 267461021 287935018 989151756 348668969 556273495 997895853 95321369 938341707 276009971 101428817 899728485 999575096 385642796 181794009 75258...
result:
points 0.83333333330 ok K = 3500
Test #7:
score: 83.3333
Acceptable Answer
time: 132ms = 132ms + 0ms
memory: 3884kb,3536kb
input:
1 100 38589601 573023388 6635272 692946586 153397181 811034102 859889237 493892802 259205483 364719660 954343124 427626481 959173918 753851930 975496695 577574806 311830132 29056811 509015429 310443549 588209966 697904208 31314024 836756664 249907127 458343750 355938610 284261099 221528639 337802970...
output:
3500 0011101010110001010110011110101000000111001011001011100110000000000001000110100010001100001000000000000000011010010000111000101100100000100001010010011100001000000000100110010001010000000001111001000000000000010000000000000010100000110000010001010000000000111001000110000010000010100001101000011...
input:
2 100 79 3500 0011101010110001010110011110101000000111001011001011100110000000000001000110100010001100001000000000000000011010010000111000101100100000100001010010011100001000000000100110010001010000000001111001000000000000010000000000000010100000110000010001010000000000111001000110000010000010100001...
output:
230017218 565349569 47782129 753851930 678112683 647428660 697904208 283703409 312668984 173256201 644234813 427626481 304813844 912323446 284261099 886592164 929134689 493892802 555567576 65699189 645479813 694103982 65190925 671520247 354050416 976551128 738019464 577574806 813237436 891060967 888...
result:
points 0.83333333330 ok K = 3500
Test #8:
score: 83.3333
Acceptable Answer
time: 826ms = 826ms + 0ms
memory: 3880kb,3600kb
input:
1 100 608812690 879292074 479028197 788306143 615995302 841820438 145257256 962764296 602711633 995581697 898256936 448106429 760128150 867194906 843820112 719060821 156799570 629004151 556234422 563271562 355032462 28734192 691911457 345245685 868932163 940932744 589136297 140594459 605248500 81637...
output:
3500 1110011100101100111101010100101000000001110100010011110111000100011000000000000000000000000000001000000010101010000100100000000000010001010001000011010000000100000100000000000100100010000101000000001000001001110001001000000001010100010101110000000000010011100000001000000100010001100011011001000...
input:
2 100 79 3500 1110011100101100111101010100101000000001110100010011110111000100011000000000000000000000000000001000000010101010000100100000000000010001010001000011010000000100000100000000000100100010000101000000001000001001110001001000000001010100010101110000000000010011100000001000000100010001100011...
output:
500331265 566760896 580044819 867194906 560949333 9781752 28734192 263251739 247143049 846291006 332847217 448106429 266605081 382040161 140594459 32445827 364204743 962764296 647363961 549897822 266248054 819012425 609835929 951476639 538336120 158314822 355385207 719060821 493794877 696188978 3014...
result:
points 0.83333333330 ok K = 3500
Test #9:
score: 83.3333
Acceptable Answer
time: 93ms = 93ms + 0ms
memory: 3588kb,3564kb
input:
1 100 221411475 163696773 580081552 897674994 529495152 42484057 439934490 746227851 716122469 137572309 850797298 158711960 820091048 515476547 797154090 246166696 923505280 368103965 246035210 308696941 613434683 955145371 875043135 212559533 205331778 121889189 468477922 194020296 861623799 72521...
output:
3500 1010000101101110001110011001111110111110100011110000110011000000010000100001000100000000000000000001000001100000001000010001101000100001100011001000000000000000100000010001110000101101000000101000000000000000010010000000010000000101010000000000001010000000010100101001000100110000000100001001000...
input:
2 100 79 3500 1010000101101110001110011001111110111110100011110000110011000000010000100001000100000000000000000001000001100000001000010001101000100001100011001000000000000000100000010001110000101101000000101000000000000000010010000000010000000101010000000000001010000000010100101001000100110000000100...
output:
447518344 20372800 820057525 515476547 929148550 975667875 955145371 710181675 270693487 815249231 444426161 158711960 978716476 472823181 194020296 768850245 118243886 746227851 939771652 880147346 23021000 674514174 170878417 120543464 688090699 772795972 659239901 246166696 22324283 62945716 4424...
result:
points 0.83333333330 ok K = 3500
Test #10:
score: 83.3333
Acceptable Answer
time: 138ms = 138ms + 0ms
memory: 3660kb,3576kb
input:
1 100 19599769 503599235 607852146 743568370 186281835 152620298 14504908 481672793 781288195 362834688 151340700 673227358 631578327 616559846 162406965 868151253 654902334 704640894 506151846 36830214 260055673 991685781 541724792 551734837 725627458 660315138 732278528 433696372 325821250 4876257...
output:
3500 0111111010100000100101100001101100010101100011100101011011000001100000000100011000001010000000000000010000000000100000100100001001000000101000100000100100011100000010100000010000100100000000000000101000000001101011000010000001000010100000000010010101000000010100110011000100000001100001000111011...
input:
2 100 79 3500 0111111010100000100101100001101100010101100011100101011011000001100000000100011000001010000000000000010000000000100000100100001001000000101000100000100100011100000010100000010000100100000000000000101000000001101011000010000001000010100000000010010101000000010100110011000100000001100001...
output:
17522166 203911209 128873662 616559846 5724752 637807633 991685781 667107960 23742057 733808995 34061776 673227358 76723239 80053091 433696372 302174338 804265440 481672793 129338272 820651206 457529317 578437883 142129496 92873118 115024862 323981695 456071005 868151253 79539206 533123847 250920833...
result:
points 0.83333333330 ok K = 3500
Test #11:
score: 0
Time Limit Exceeded
input:
1 100 754728080 615034506 278142947 739166255 431557648 213650106 801076937 12302465 390056764 405912325 958010191 972296266 618096674 290293214 816072144 822111433 114390542 264666411 362376476 262284198 397871046 932447079 740458746 280549044 401344771 621570565 158481121 162119017 575252154 10877...