Task: | Niitty |
Sender: | adex720 |
Submission time: | 2024-11-04 20:29:16 +0200 |
Language: | C++ (C++20) |
Status: | READY |
Result: | 58 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 4 |
#2 | ACCEPTED | 6 |
#3 | ACCEPTED | 10 |
#4 | ACCEPTED | 13 |
#5 | ACCEPTED | 25 |
#6 | TIME LIMIT EXCEEDED | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.00 s | 1, 2, 3, 4, 5, 6 | details |
#2 | ACCEPTED | 0.00 s | 1, 2, 3, 4, 5, 6 | details |
#3 | ACCEPTED | 0.00 s | 1, 2, 3, 4, 5, 6 | details |
#4 | ACCEPTED | 0.00 s | 1, 2, 3, 4, 5, 6 | details |
#5 | ACCEPTED | 0.00 s | 1, 2, 3, 4, 5, 6 | details |
#6 | ACCEPTED | 0.00 s | 2, 3, 4, 5, 6 | details |
#7 | ACCEPTED | 0.01 s | 2, 3, 4, 5, 6 | details |
#8 | ACCEPTED | 0.00 s | 2, 3, 4, 5, 6 | details |
#9 | ACCEPTED | 0.01 s | 2, 3, 4, 5, 6 | details |
#10 | ACCEPTED | 0.01 s | 3, 4, 5, 6 | details |
#11 | ACCEPTED | 0.03 s | 3, 4, 5, 6 | details |
#12 | ACCEPTED | 0.01 s | 3, 4, 5, 6 | details |
#13 | ACCEPTED | 0.01 s | 3, 4, 5, 6 | details |
#14 | ACCEPTED | 0.02 s | 4, 5, 6 | details |
#15 | ACCEPTED | 0.18 s | 4, 5, 6 | details |
#16 | ACCEPTED | 0.01 s | 4, 5, 6 | details |
#17 | ACCEPTED | 0.10 s | 4, 5, 6 | details |
#18 | ACCEPTED | 0.12 s | 5, 6 | details |
#19 | ACCEPTED | 0.94 s | 5, 6 | details |
#20 | ACCEPTED | 0.05 s | 5, 6 | details |
#21 | ACCEPTED | 0.82 s | 5, 6 | details |
#22 | TIME LIMIT EXCEEDED | -- | 6 | details |
#23 | TIME LIMIT EXCEEDED | -- | 6 | details |
#24 | ACCEPTED | 0.65 s | 6 | details |
#25 | TIME LIMIT EXCEEDED | -- | 6 | details |
Compiler report
input/code.cpp:83:6: warning: "/*" within comment [-Wcomment] 83 | }/**/ | input/code.cpp: In function 'int main()': input/code.cpp:100:17: warning: variable 'edellinenSuurin' set but not used [-Wunused-but-set-variable] 100 | int edellinenSuurin = 0; | ^~~~~~~~~~~~~~~
Code
#include <bits/stdc++.h>using namespace std;int main(){ios_base::sync_with_stdio(false);cin.tie(nullptr);int n, index, uusi;cin >> n;char c;string rivit[n];for (int i = 0; i < n; i++){cin >> rivit[i];}int ylla[26][n][n];string eka = rivit[0];string vika = rivit[n - 1];for (int x = 0; x < n; x++){for (int j = 0; j < 26; j++){ylla[j][0][x] = -1;}ylla[eka[x] - 'A'][0][x] = 0;}set<int> kukat;for (int y = 1; y < n; y++){string rivi = rivit[y];for (int x = 0; x < n; x++){c = rivi[x];index = c - 'A';kukat.insert(index);for (int k = 0; k < 26; k++){ylla[k][y][x] = index == k ? 0 : ylla[k][y - 1][x] == -1 ? -1: ylla[k][y - 1][x] + 1;}}}for (char kir : eka){kukat.insert(kir - 'A');}/*int pieninLoppu = 0;int suurinAloitus = 0;for (int i : kukat){int pienin = n - 1;for (int x = 0; x < n; x++){for (int y = 0; y < n; y++){if (ylla[i][y][x] == 0){pienin = x;break;}}if (pienin < n - 1){break;}}if (pienin > pieninLoppu){pieninLoppu = pienin;}}/**/long long maara = 0;int minimikorkeudet[27];int suurin;for (int alkuX = 0; alkuX < n; alkuX++){for (int alkuY = 0; alkuY < n; alkuY++){set<int> k = kukat;for (int i : k){minimikorkeudet[i] = -1;}suurin = -1;int edellinenSuurin = 0;for (int loppuX = alkuX; loppuX < n; loppuX++){/*if ((ylla[edellinenSuurin][alkuY][loppuX] >= suurin || ylla[edellinenSuurin][alkuY][loppuX] == -1) && suurin >= 0){maara += alkuY - suurin + 1;k.erase(rivit[alkuY][loppuX] - 'A');continue;}*/for (int i : k){uusi = ylla[i][alkuY][loppuX];if ((uusi < minimikorkeudet[i] || minimikorkeudet[i] < 0) && uusi >= 0){minimikorkeudet[i] = uusi;}}k.erase(rivit[alkuY][loppuX] - 'A');suurin = 0;for (int i : kukat){uusi = minimikorkeudet[i];if (uusi == -1){suurin = -1;break;}if (uusi > suurin){suurin = uusi;edellinenSuurin = i;}}if (suurin == -1){continue;}maara += alkuY - suurin + 1;}}}cout << maara;}
Test details
Test 1
Group: 1, 2, 3, 4, 5, 6
Verdict: ACCEPTED
input |
---|
10 TNCTNPNTPC NPPNTNTPTP NTNTTCNTCT NPCPNPPNTT ... |
correct output |
---|
2035 |
user output |
---|
2035 |
Test 2
Group: 1, 2, 3, 4, 5, 6
Verdict: ACCEPTED
input |
---|
10 NFWQLWNWYS DZOQJVXFPJ CNHXPXMCQD QRTBVNLTQC ... |
correct output |
---|
9 |
user output |
---|
9 |
Test 3
Group: 1, 2, 3, 4, 5, 6
Verdict: ACCEPTED
input |
---|
10 XXXXXXXXXX XXXXXXXXXX XXXXXXXXXX XXXXXXXXXX ... |
correct output |
---|
3025 |
user output |
---|
3025 |
Test 4
Group: 1, 2, 3, 4, 5, 6
Verdict: ACCEPTED
input |
---|
10 FFFFFFFFFF FFFFFCFFFF FFFFFFJFFF FFFFFFFFFF ... |
correct output |
---|
12 |
user output |
---|
12 |
Test 5
Group: 1, 2, 3, 4, 5, 6
Verdict: ACCEPTED
input |
---|
1 X |
correct output |
---|
1 |
user output |
---|
1 |
Test 6
Group: 2, 3, 4, 5, 6
Verdict: ACCEPTED
input |
---|
20 BBCBUBOUOBBCUUBBCOUO BOUCOOCUBCOOOCOBOCUO UCCUUUOBCOCBCBUBUCOO BUOBUCUCUOOBCOOUBUOO ... |
correct output |
---|
38724 |
user output |
---|
38724 |
Test 7
Group: 2, 3, 4, 5, 6
Verdict: ACCEPTED
input |
---|
20 CBGLSHGZHYZDWBNDBJUG SMUXOJQYPXZDTMJUIWOJ XIDSTNBGHKRKOVUVMINB MTQGCFRUHQKALXRNCQGS ... |
correct output |
---|
8334 |
user output |
---|
8334 |
Test 8
Group: 2, 3, 4, 5, 6
Verdict: ACCEPTED
input |
---|
20 KKKKKKKKKKKKKKKKKKKK KKKKKKKKKKKKKKKKKKKK KKKKKKKKKKKKKKKKKKKK KKKKKKKKKKKKKKKKKKKK ... |
correct output |
---|
44100 |
user output |
---|
44100 |
Test 9
Group: 2, 3, 4, 5, 6
Verdict: ACCEPTED
input |
---|
20 AAAAAAAAXAAAAAAAAAAA AAAWAAAAAAAAAAAAAOAA AAAAAAAAAAAAAAAAAPAA AAAAAAAAKAAAAAAAAAAZ ... |
correct output |
---|
18 |
user output |
---|
18 |
Test 10
Group: 3, 4, 5, 6
Verdict: ACCEPTED
input |
---|
50 GRGREEEGREGXRXXEGXXREXGRRRGRRR... |
correct output |
---|
1584665 |
user output |
---|
1584665 |
Test 11
Group: 3, 4, 5, 6
Verdict: ACCEPTED
input |
---|
50 AITIISJUHCCRZNKSDCNQKYSQRINFWJ... |
correct output |
---|
1077746 |
user output |
---|
1077746 |
Test 12
Group: 3, 4, 5, 6
Verdict: ACCEPTED
input |
---|
50 OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO... |
correct output |
---|
1625625 |
user output |
---|
1625625 |
Test 13
Group: 3, 4, 5, 6
Verdict: ACCEPTED
input |
---|
50 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF... |
correct output |
---|
1680 |
user output |
---|
1680 |
Test 14
Group: 4, 5, 6
Verdict: ACCEPTED
input |
---|
100 NNCMDCDDCCNNNDNCMMNCDCDCCDCDNM... |
correct output |
---|
25325366 |
user output |
---|
25325366 |
Test 15
Group: 4, 5, 6
Verdict: ACCEPTED
input |
---|
100 LIMQQIHASECROEVILNVULGWZJPPKOG... |
correct output |
---|
22342463 |
user output |
---|
22342463 |
Test 16
Group: 4, 5, 6
Verdict: ACCEPTED
input |
---|
100 TTTTTTTTTTTTTTTTTTTTTTTTTTTTTT... |
correct output |
---|
25502500 |
user output |
---|
25502500 |
Test 17
Group: 4, 5, 6
Verdict: ACCEPTED
input |
---|
100 QXQQQQQQQQQQQQQQQQQQQQQQQQQQQQ... |
correct output |
---|
25650 |
user output |
---|
25650 |
Test 18
Group: 5, 6
Verdict: ACCEPTED
input |
---|
200 NAANANMMKNKKAKMKMAKNKMNKMMNNAA... |
correct output |
---|
403292767 |
user output |
---|
403292767 |
Test 19
Group: 5, 6
Verdict: ACCEPTED
input |
---|
200 OMYWATTLURKQPTKEFMGGYAOONXWVSC... |
correct output |
---|
388111321 |
user output |
---|
388111321 |
Test 20
Group: 5, 6
Verdict: ACCEPTED
input |
---|
200 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC... |
correct output |
---|
404010000 |
user output |
---|
404010000 |
Test 21
Group: 5, 6
Verdict: ACCEPTED
input |
---|
200 LLLLLLLLLLLLLLLLLHLLLLLLLLLLLL... |
correct output |
---|
14159445 |
user output |
---|
14159445 |
Test 22
Group: 6
Verdict: TIME LIMIT EXCEEDED
input |
---|
500 VVHWVUHVHUWWWVUUUWVUUHUUWHWUVW... |
correct output |
---|
15683003812 |
user output |
---|
(empty) |
Test 23
Group: 6
Verdict: TIME LIMIT EXCEEDED
input |
---|
500 OIMZGEQSBMBDSDXSWRFNKSGFEBBTJE... |
correct output |
---|
15575906951 |
user output |
---|
(empty) |
Test 24
Group: 6
Verdict: ACCEPTED
input |
---|
500 IIIIIIIIIIIIIIIIIIIIIIIIIIIIII... |
correct output |
---|
15687562500 |
user output |
---|
15687562500 |
Test 25
Group: 6
Verdict: TIME LIMIT EXCEEDED
input |
---|
500 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWW... |
correct output |
---|
3058970930 |
user output |
---|
(empty) |