QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#742817 | #9701. Cat | ucup-team004 | AC ✓ | 244ms | 3636kb | C++23 | 921b | 2024-11-13 17:23:49 | 2024-11-13 17:23:51 |
Judging History
answer
#include <bits/stdc++.h>
using i64 = long long;
using u64 = unsigned long long;
using u32 = unsigned;
using u128 = unsigned __int128;
i64 get(i64 n) {
if (n % 4 == 0) {
return 0;
} else if (n % 4 == 1) {
return n - 1;
} else if (n % 4 == 2) {
return 1;
} else if (n % 4 == 3) {
return n;
}
}
void solve() {
i64 L, R, S;
std::cin >> L >> R >> S;
i64 ans = -1;
for (i64 l = L; l <= std::min(R, L + 8); l++) {
for (i64 r = R; r >= std::max(l, R - 8); r--) {
if ((get(r + 1) ^ get(l)) <= S) {
ans = std::max(ans, r - l + 1);
}
}
}
std::cout << ans << "\n";
}
int main() {
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);
int t;
std::cin >> t;
while (t--) {
solve();
}
return 0;
}
詳細信息
Test #1:
score: 100
Accepted
time: 244ms
memory: 3636kb
input:
500000 28316250877914575 822981260158260522 1779547116602436425 335408917861648772 578223540024979445 74859962623690079 252509054433933447 760713016476190629 919845426262703496 522842184971407775 585335723211047202 148049062628894322 84324828731963982 354979173822804784 1001312150450968415 269587449...
output:
794665009280345948 242814622163330674 508203962042257183 62493538239639426 270654345090840803 376174809552329776 469882136957817192 42350729279043822 64865315101301174 697234070719324700 223517937810991678 108731400892235542 120906461794646288 463966315863716824 433607439314780607 450247658658833134...
result:
ok 500000 numbers
Test #2:
score: 0
Accepted
time: 218ms
memory: 3628kb
input:
500000 23 999999999999999996 27 576460752303423448 576460752303423490 576460752303423491 999999999999999936 999999999999999964 20 576460752303423534 576460752303423555 116 576460752303423486 576460752303423553 576460752303423547 576460752303423483 576460752303423496 576460752303423492 57646075230342...
output:
999999999999999973 43 28 22 68 13 4 38 576460752303423488 576460752303423533 12 73 999999999999999879 576460752303423451 22 43 576460752303423492 28 4 10 22 42 999999999999999920 576460752303423502 576460752303423451 36 12246659296139068 999999999999999878 999999999999999882 636067326669398785 57646...
result:
ok 500000 numbers
Test #3:
score: 0
Accepted
time: 208ms
memory: 3620kb
input:
500000 9 34 15 43 999999999999999986 45 46 576460752303423452 576460752303423454 67 576460752303423427 576460752303423425 576460752303423427 576460752303423436 4 13 576460752303423485 0 280939520439490979 303579375855633068 280939520439490985 57 576460752303423541 59 576460752303423418 5764607523034...
output:
25 999999999999999943 576460752303423407 576460752303423361 8 576460752303423472 22639855416142089 576460752303423485 16 999999999999999927 105 576460752303423356 576460752303423470 3 576460752303423421 576460752303423449 576460752303423425 69 100 18 352444936152834244 58 687849149627053501 66 57646...
result:
ok 500000 numbers
Test #4:
score: 0
Accepted
time: 208ms
memory: 3560kb
input:
500000 18 576460752303423429 576460752303423445 576460752303423501 576460752303423551 51 53 576460752303423545 1 43 576460752303423443 49 909705471529716396 909705471529716401 28 23 49 60 576460752303423468 576460752303423523 576460752303423472 594738223099041411 639698402648794444 14527168606043857...
output:
576460752303423412 50 576460752303423492 576460752303423401 6 27 56 44960179549753034 576460752303423497 999999999999999907 12 576460752303423465 999999999999999983 576460752303423383 576460752303423463 50 156210206167576160 999999999999999897 576460752303423437 105 90 576460752303423543 34 99999999...
result:
ok 500000 numbers