QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#103569 | #6348. Egor Has a Problem | gapinho# | AC ✓ | 274ms | 19032kb | C++14 | 2.1kb | 2023-05-06 20:38:57 | 2023-05-06 20:38:57 |
Judging History
answer
#include <bits/stdc++.h>
#define int long long
using namespace std;
int ans[2][2];
void printAns() {
for(int i = 0; i < 2; ++i) {
for(int j = 0; j < 2; ++j) {
cout << ans[i][j] + 1 << ' ';
}
}
exit(0);
}
int32_t main() {
int n;
cin >> n;
vector<int> a(n);
for(int &x : a) cin >> x;
int ans[2][2];
int z = 0;
for(int i = 1; i < n && z < 2; ++i) {
if(a[i] < a[i - 1]) {
ans[z][0] = i - 1;
ans[z][1] = i;
z++;
i++;
}
}
if(z == 2) {
cout << "YES\n";
printAns();
}
if(n < 1000) {
map<int, pair<int, int>> dic;
for(int i = 0; i < n; ++i) {
for(int j = i + 1; j < n; ++j) {
if(dic.count(a[j]/a[i])) {
cout << "YES\n";
auto h = dic[a[j]/a[i]];
cout << h.first+1 << ' ' << h.second + 1 << ' ' << i + 1 << ' ' << j + 1 << endl;
return 0;
}
}
for(int j = 0; j < i; j++) {
dic[a[i]/a[j]] = make_pair(j, i);
}
}
cout << "NO\n";
return 0;
}
cout << "YES\n";
int quebra = 0;
for(int i = 1; i < n; ++i) {
if(a[i] < a[i - 1]) {
quebra = i;
break;
}
}
vector<int> b;
if(quebra < n / 2) {
for(int i = quebra; i < n; ++i) {
b.push_back(a[i]);
}
} else {
for(int i = quebra - 1; i >= 0; --i) {
b.push_back(a[i]);
}
}
vector<vector<int>> bits(100, vector<int>());
for(int i = 0; i < b.size(); ++i) {
for(int j = 62; j >= 0; j--) {
if(b[i] & (1ll << j)) {
bits[j].push_back(i);
break;
}
}
}
for(int i = 0; i < bits.size(); ++i) {
if(bits[i].size() >= 4) {
for(int j = 0; j < 4; ++j) {
cout << bits[i][j] + 1 << ' ';
}
exit(0);
}
}
assert(false);
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 2ms
memory: 3328kb
input:
6 2 6 11 21 47 120
output:
YES 1 3 4 6
result:
ok OK
Test #2:
score: 0
Accepted
time: 1ms
memory: 3312kb
input:
5 1 2 6 30 210
output:
NO
result:
ok OK
Test #3:
score: 0
Accepted
time: 0ms
memory: 3308kb
input:
4 7 13 77 143
output:
YES 1 2 3 4
result:
ok OK
Test #4:
score: 0
Accepted
time: 0ms
memory: 3336kb
input:
4 10 29 31 100
output:
NO
result:
ok OK
Test #5:
score: 0
Accepted
time: 257ms
memory: 17168kb
input:
500000 627045176858 4817409059014 6288122580263 11138485427254 14292718094002 14799874839768 16926890883539 17617152313162 17645472255619 18208915248631 22963632241827 24466999302606 25551903318615 26091633648017 38200644379849 39885775205129 40036378248650 40309675851194 40773414900416 408933438176...
output:
YES 4 5 6 7
result:
ok OK
Test #6:
score: 0
Accepted
time: 248ms
memory: 17172kb
input:
500000 4296317198460 9088530306835 12761569474357 16261038279090 16941085611205 18350614838717 22480413215272 23329628179141 24312311764761 24433929342173 27221427530427 28176763451413 28796907935821 30472998712185 32522454545697 33716639435084 36803789739537 36820525380957 39761789956892 4078696306...
output:
YES 2 3 4 5
result:
ok OK
Test #7:
score: 0
Accepted
time: 248ms
memory: 17236kb
input:
500000 2486629253945 2653364744556 4284488165789 4329370039939 4642065503681 6901749347495 19192137130640 21230142707219 21572527039148 22380596790669 24549580468932 24705234465366 24809017205084 25372640950744 30936948747149 31605133106641 35382503368540 36668459004194 39297585189262 40441705410326...
output:
YES 1 2 3 4
result:
ok OK
Test #8:
score: 0
Accepted
time: 256ms
memory: 17204kb
input:
500000 1212707463644 3060808785468 5253681005592 6636218910647 8688761397981 9169130038833 9604296507161 10581672897486 14606712594653 18215478522408 19985113657583 21876858531698 22009681507073 25744252327149 29854713235059 30049643326503 35465827651805 38437058489989 40205415453241 42389564776077 ...
output:
YES 6 7 8 9
result:
ok OK
Test #9:
score: 0
Accepted
time: 274ms
memory: 17444kb
input:
500000 1 999999999999500002 999999999999500003 999999999999500004 999999999999500005 999999999999500006 999999999999500007 999999999999500008 999999999999500009 999999999999500010 999999999999500011 999999999999500012 999999999999500013 999999999999500014 999999999999500015 999999999999500016 999999...
output:
YES 2 3 4 5
result:
ok OK
Test #10:
score: 0
Accepted
time: 268ms
memory: 17964kb
input:
500000 2 999999999999500002 999999999999500003 999999999999500004 999999999999500005 999999999999500006 999999999999500007 999999999999500008 999999999999500009 999999999999500010 999999999999500011 999999999999500012 999999999999500013 999999999999500014 999999999999500015 999999999999500016 999999...
output:
YES 2 3 4 5
result:
ok OK
Test #11:
score: 0
Accepted
time: 246ms
memory: 17680kb
input:
500000 3 999999999999500002 999999999999500003 999999999999500004 999999999999500005 999999999999500006 999999999999500007 999999999999500008 999999999999500009 999999999999500010 999999999999500011 999999999999500012 999999999999500013 999999999999500014 999999999999500015 999999999999500016 999999...
output:
YES 2 3 4 5
result:
ok OK
Test #12:
score: 0
Accepted
time: 256ms
memory: 18700kb
input:
500000 4 999999999999500002 999999999999500003 999999999999500004 999999999999500005 999999999999500006 999999999999500007 999999999999500008 999999999999500009 999999999999500010 999999999999500011 999999999999500012 999999999999500013 999999999999500014 999999999999500015 999999999999500016 999999...
output:
YES 2 3 4 5
result:
ok OK
Test #13:
score: 0
Accepted
time: 250ms
memory: 19032kb
input:
500000 1 399999999999500002 399999999999500003 399999999999500004 399999999999500005 399999999999500006 399999999999500007 399999999999500008 399999999999500009 399999999999500010 399999999999500011 399999999999500012 399999999999500013 399999999999500014 399999999999500015 399999999999500016 399999...
output:
YES 2 3 4 5
result:
ok OK
Test #14:
score: 0
Accepted
time: 253ms
memory: 18288kb
input:
500000 2 399999999999500002 399999999999500003 399999999999500004 399999999999500005 399999999999500006 399999999999500007 399999999999500008 399999999999500009 399999999999500010 399999999999500011 399999999999500012 399999999999500013 399999999999500014 399999999999500015 399999999999500016 399999...
output:
YES 2 3 4 5
result:
ok OK
Test #15:
score: 0
Accepted
time: 247ms
memory: 17880kb
input:
500000 3 399999999999500002 399999999999500003 399999999999500004 399999999999500005 399999999999500006 399999999999500007 399999999999500008 399999999999500009 399999999999500010 399999999999500011 399999999999500012 399999999999500013 399999999999500014 399999999999500015 399999999999500016 399999...
output:
YES 2 3 4 5
result:
ok OK
Test #16:
score: 0
Accepted
time: 2ms
memory: 3404kb
input:
10 1 2 3 9 36 360 13320 4808520 64054294920 308006422263013320
output:
NO
result:
ok OK
Test #17:
score: 0
Accepted
time: 0ms
memory: 3308kb
input:
9 1 2 3 9 36 360 13320 4808520 64054294920
output:
NO
result:
ok OK
Test #18:
score: 0
Accepted
time: 2ms
memory: 3408kb
input:
10 3861348309891 127439409255713 551948644892279 2552834525268279 19417204359723670 102703824912373168 336410714638229509 857014049592511384 918060937762570344 992825966112149288
output:
NO
result:
ok OK
Test #19:
score: 0
Accepted
time: 2ms
memory: 3344kb
input:
10 374432361454 3518670391085 108003930276680 1335172630640345 8456849498329971 36786273792403923 120085800577991088 318281777133095838 383067822022773917 697280279299110793
output:
NO
result:
ok OK
Test #20:
score: 0
Accepted
time: 2ms
memory: 3344kb
input:
11 903698880731 8661804054951 46413148737609 2047329226174757 6320772683571604 21145056521166311 53518443870119450 151094208662606815 620225829430430781 643358709747358736 987761154108547529
output:
NO
result:
ok OK
Test #21:
score: 0
Accepted
time: 0ms
memory: 3416kb
input:
16 1 2 6 30 210 2310 30030 510510 9699690 223092870 6469693230 200560490130 7420738134810 304250263527210 13082761331670030 614889782588491410
output:
NO
result:
ok OK
Test #22:
score: 0
Accepted
time: 2ms
memory: 3416kb
input:
23 1 2 4 32 256 3328 43264 129792 389376 2336256 14017536 70087680 350438400 3504384000 35043840000 245306880000 1717148160000 24040074240000 336561039360000 3702171432960000 40723885762560000 692306057963520000 692306057963520001
output:
NO
result:
ok OK
Test #23:
score: 0
Accepted
time: 2ms
memory: 3356kb
input:
24 1 2 4 32 256 3328 43264 129792 389376 2336256 14017536 70087680 350438400 3504384000 35043840000 245306880000 1717148160000 24040074240000 336561039360000 3702171432960000 40723885762560000 692306057963520000 692306057963520001 692306057963520002
output:
NO
result:
ok OK
Test #24:
score: 0
Accepted
time: 0ms
memory: 3412kb
input:
25 1 2 4 32 256 3328 43264 129792 389376 2336256 14017536 70087680 350438400 3504384000 35043840000 245306880000 1717148160000 24040074240000 336561039360000 3702171432960000 40723885762560000 692306057963520000 692306057963520001 692306057963520002 692306057963520003
output:
YES 22 23 24 25
result:
ok OK
Test #25:
score: 0
Accepted
time: 0ms
memory: 3420kb
input:
26 1 2 4 32 256 3328 43264 129792 389376 2336256 14017536 70087680 350438400 3504384000 35043840000 245306880000 1717148160000 24040074240000 336561039360000 3702171432960000 40723885762560000 692306057963520000 692306057963520001 692306057963520002 692306057963520003 692306057963520004
output:
YES 22 23 24 25
result:
ok OK
Test #26:
score: 0
Accepted
time: 242ms
memory: 17416kb
input:
500000 1 2 4 32 256 3328 43264 129792 389376 2336256 14017536 70087680 350438400 3504384000 35043840000 245306880000 1717148160000 24040074240000 336561039360000 3702171432960000 40723885762560000 692306057963520000 692306057963520001 692306057963520002 692306057963520003 692306057963520004 69230605...
output:
YES 22 23 24 25
result:
ok OK
Test #27:
score: 0
Accepted
time: 2ms
memory: 3424kb
input:
6 20122422218883239 56278710347381443 247237730275417133 286111661631847944 354848159244882586 964700009339386544
output:
YES 1 2 5 6
result:
ok OK
Test #28:
score: 0
Accepted
time: 2ms
memory: 3412kb
input:
8 390276856793488 1152876923982673 6982441155075473 26146320000665894 45310164832331696 87593483686155752 366720093455746367 863464306708560705
output:
YES 1 2 7 8
result:
ok OK
Test #29:
score: 0
Accepted
time: 2ms
memory: 3376kb
input:
9 61307755780486 129326614955470 1118666378585854 9719828040294917 48313589660444318 242156755123277778 312272361787807645 339925101639750428 941720167539522416
output:
YES 1 2 8 9
result:
ok OK
Test #30:
score: 0
Accepted
time: 2ms
memory: 3376kb
input:
25 1 2 4 32 256 3328 43264 129792 389376 2336256 14017536 70087680 350438400 3504384000 35043840000 245306880000 1717148160000 24040074240000 336561039360000 3702171432960000 40723885762560000 488686629150720000 488686629150720001 488686629150720002 977373258301440004
output:
YES 2 3 22 25
result:
ok OK
Test #31:
score: 0
Accepted
time: 2ms
memory: 3376kb
input:
25 1 2 4 32 256 3328 43264 129792 389376 2336256 14017536 70087680 350438400 3504384000 35043840000 245306880000 1717148160000 24040074240000 336561039360000 3702171432960000 40723885762560000 40723885762560001 40723885762560002 488686629150720024 977373258301440048
output:
YES 2 3 24 25
result:
ok OK
Test #32:
score: 0
Accepted
time: 2ms
memory: 3420kb
input:
16 1 2 4 32 256 768 2304 13824 82944 414720 2073600 14515200 101606400 101606401 101606402 10323860825779202
output:
YES 1 14 15 16
result:
ok OK
Test #33:
score: 0
Accepted
time: 2ms
memory: 3360kb
input:
16 1 101606400 101606401 101606402 203212804 406425608 3251404864 26011238912 78033716736 234101150208 1404606901248 8427641407488 42138207037440 210691035187200 1474837246310400 10323860724172800
output:
YES 1 2 3 16
result:
ok OK