QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#23844 | #2903. Tetris Generation | dmcdo | AC ✓ | 9ms | 3692kb | C++ | 1.6kb | 2022-03-19 23:10:40 | 2022-04-30 04:21:35 |
Judging History
answer
#include <iostream>
using namespace std;
bool uniqueseq(string &str, int lo, int hi) {
short j = 0, l = 0, s = 0, z = 0, i = 0, o = 0, t = 0;
for (int _i = lo; _i <= hi; _i++) {
switch(str[_i]) {
case 'J':
if (++j > 1)
return false;
break;
case 'L':
if (++l > 1)
return false;
break;
case 'S':
if (++s > 1)
return false;
break;
case 'Z':
if (++z > 1)
return false;
break;
case 'I':
if (++i > 1)
return false;
break;
case 'O':
if (++o > 1)
return false;
break;
case 'T':
if (++t > 1)
return false;
break;
}
}
return true;
}
int main(int argc, char const *argv[])
{
int t;
cin >> t;
while (t--) {
string str;
cin >> str;
bool valid = false;
for (int sep = 0; sep < 7; sep++) {
if (sep != 0 && !uniqueseq(str, 0, sep - 1))
continue;
for (int i = sep; i < str.length(); i += 7)
if (!uniqueseq(str, i, min(i + 6, (int)str.length() - 1)))
goto skip;
valid = true;
break;
skip:
continue;
}
cout << (valid ? 1 : 0) << endl;
}
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 3ms
memory: 3684kb
input:
2 JJTO JJTT
output:
1 0
result:
ok 2 lines
Test #2:
score: 0
Accepted
time: 3ms
memory: 3548kb
input:
1 O
output:
1
result:
ok single line: '1'
Test #3:
score: 0
Accepted
time: 4ms
memory: 3548kb
input:
2 JLSZIOTTOIZSLJ JLSZIOJLSZIOT
output:
1 1
result:
ok 2 lines
Test #4:
score: 0
Accepted
time: 6ms
memory: 3692kb
input:
7 ZSTIOILZOTSJJLIOTSZSTIZOLJSTLOJZITSIJLZOIZSJOLTTJLSZOISOIZLJTTJOSILZZITOSJLTLIZOSJSJOLTIZSOITZJLLIJSTOZOSIJTLZITLOSZJTSZILJOJZSOTLIITOLZJSZTLJISOSJLTZOIZOLISJTSILZJOTOZTJISLLZOJTSISJTILOZTIJZSOLISOZJTLITLOSZJIZJOTSLTSZILJOTIJLZOSTLZOJSIOSJTLZISZLJTIOITLOSZJSOIJZLTLJSTOIZSOZJITLLISJOTZTJOILSZLTJZIS...
output:
1 1 1 1 1 1 1
result:
ok 7 lines
Test #5:
score: 0
Accepted
time: 1ms
memory: 3648kb
input:
3 ZSTIOILZOTSJJLIOTSZSTIZOLJSTLOJZITSIJLZOIZSJOLTOJLSZOISOIZLJTTJOSILZZITOSJLTLIZOSJSJOLTIZSOITZJLLIJSTOZOSIJTLZITLOSZJTSZILJOJZSOTLIITOLZJSZTLJISOSJLTZOIZOLISJTSILZJOTOZTJISLLZOJTSISJTILOZTIJZSOLISOZJTLITLOSZJIZJOTSLTSZILJOTIJLZOSTLZOJSIOSJTLZISZLJTIOITLOSZJSOIJZLTLJSTOIZSOZJITLLISJOTZTJOILSZLTJZIS...
output:
0 1 0
result:
ok 3 lines
Test #6:
score: 0
Accepted
time: 9ms
memory: 3492kb
input:
100 TOISIZOLSJTLZTOSIJLTZSJOILOSTZJIOLJZTISZIOLTJSJZLTOISLTOIZJSZLITOSJSTZJOILOSLZITJOJTIZLSSOITJZLLOTJISZZSITJLOZTLJISOIOTSLJZZOTISLJLISOTJZLZJSOITZSIJLTOLSJIOTZJTOZSLILJTIOZSLOZTSJITJZIOLSLOSTJIZSLOJTZIZSOIJTLIOTJZSLIZJOLSTSJLITOZSJITZOLJLTZSOIIJOTZLSIZOSTJLISOJTZLLOIJSZTZILSOJTOZILSTJTOLSZIJSOZJI...
output:
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
result:
ok 100 lines
Test #7:
score: 0
Accepted
time: 5ms
memory: 3632kb
input:
1000 OTSZILILJZOTSSLTOJIZTZLSIJOOLSITJZSOIZTLJTOISLJZJTLIOSZSJTILZOLZSJOTIJILSOTZIZLOJSTTSIOJLZJISZLTOZST SLIJSZTLOLSZJITOOZTIJSLLJTIZOSOLZISJTZSOJTILLSTOIZJOITJLZSSJILTOZSZLJOTILSOTZJITJZOLSIOJSLTIZSLIOZTJ TOLJZTIOSOTIZSJLISOLTZJOZILSJTJLTSOIZTZOJILSIOTSZLJOJTSLZIZLJTSIOTISJOLZJTSLIOZILSTZJOOSZTIJL...
output:
1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 ...
result:
ok 1000 lines