QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#644337 | #9463. 基础 ABC 练习题 | C1942huangjiaxu | 20 | 2586ms | 4072kb | C++14 | 1.1kb | 2024-10-16 13:21:12 | 2024-10-16 13:21:14 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
const int N=63,P=998244353;
int C,T;
int f[2][N][N][2][2];
int m,n,ans;
char s[N*3],s1[N],s2[N];
inline void Add(int &x,int y){
if((x+=y)>=P)x-=P;
}
void DP(int A,int B){
int C=n-A-B;
memset(f,0,sizeof(f));
f[0][0][0][!A][!B]=1;
for(int i=0,p=0,q=1;i<m;++i,p^=1,q^=1){
for(int a=0;a<=n;++a)
for(int b=0;b<=n;++b){
int c=i-a-b,w;
if(c<0||c>n)continue;
for(int u=0;u<2;++u)for(int v=0;v<2;++v)if(w=f[p][a][b][u][v]){
f[p][a][b][u][v]=0;
if((s[i]=='A'||s[i]=='?')&&a+1-c<=A)Add(f[q][a+1][b][u|(a+1-c==A)][v],w);
if((s[i]=='B'||s[i]=='?')&&b+1-a<=B)Add(f[q][a][b+1][u][v|(b+1-a==B)],w);
if((s[i]=='C'||s[i]=='?')&&c+1-b<=C)Add(f[q][a][b][u][v],w);
}
}
}
Add(ans,f[m&1][n][n][1][1]);
}
void solve(){
scanf("%d",&n);
scanf("%s%s%s",s1,s2,s);
if(T)return puts("-1"),void();
m=3*n,ans=0;
for(int A=0;A<=n;++A)if(s1[A]=='1')for(int B=0;B+A<=n;++B)if(s2[B]=='1')DP(A,B);
printf("%d\n",ans);
}
int main(){
scanf("%d%d",&T,&C);
while(T--)solve();
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 20
Accepted
Test #1:
score: 20
Accepted
time: 2586ms
memory: 4028kb
input:
60 1 1 11 11 ABC 2 111 111 CABABC 3 1111 1111 CAABBCBAC 4 11111 11111 BACBBACBACAC 5 111111 111111 CABCCBBAABCCBAA 6 1111111 1111111 ABABABCACBCBCCACBA 7 11111111 11111111 BCAABACBBCBBABCCAACAC 8 111111111 111111111 CCBCBBBCAABCBCAAAAACBCBA 9 1111111111 1111111111 CCCCACABCBABAABCCAABABBCBBA 10 1111...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1
result:
ok Accepted!!!
Test #2:
score: 20
Accepted
time: 2575ms
memory: 3968kb
input:
60 1 1 11 11 CBA 2 111 111 BACACB 3 1111 1111 BCBCACABA 4 11111 11111 CCBACABBBCAA 5 111111 111111 BCACBBABBCCAACA 6 1111111 1111111 BBCBACCAACBCBCAABA 7 11111111 11111111 ACBCCBBAABAABCACCACBB 8 111111111 111111111 BAACACBACCCBAACCBABABBCB 9 1111111111 1111111111 BABCBCAAAAABBCCCACBCBBABACC 10 1111...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1
result:
ok Accepted!!!
Test #3:
score: 20
Accepted
time: 2575ms
memory: 4040kb
input:
60 1 1 11 11 BCA 2 111 111 BCABCA 3 1111 1111 CBACCAABB 4 11111 11111 BACBCBBCCAAA 5 111111 111111 BCCCBABACCBABAA 6 1111111 1111111 ACAACBABABBCACBCCB 7 11111111 11111111 BBBCABCCCAABCACBACAAB 8 111111111 111111111 ACCACAABACBAABBCBCBBACBC 9 1111111111 1111111111 BCCBACBBACCCBCCAABAACABAABB 10 1111...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1
result:
ok Accepted!!!
Test #4:
score: 20
Accepted
time: 2569ms
memory: 3972kb
input:
60 1 1 11 11 BCA 2 111 111 ACABCB 3 1111 1111 BABCABCCA 4 11111 11111 CCABACABBACB 5 111111 111111 ABBBCBBCACCAACA 6 1111111 1111111 CACBABCABCCBABAACB 7 11111111 11111111 BACBCABACBBCCCBAAACAB 8 111111111 111111111 CABABBCAACABCBACBABACBCC 9 1111111111 1111111111 BCBAACBABABCBACBABABCCACACC 10 1111...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1
result:
ok Accepted!!!
Test #5:
score: 20
Accepted
time: 2579ms
memory: 4036kb
input:
60 1 1 11 11 ABC 2 111 111 BBCACA 3 1111 1111 ACBBCBAAC 4 11111 11111 ABACACCCABBB 5 111111 111111 ACCCCCAAABABBBB 6 1111111 1111111 ABAABBBBCCCCCCAABA 7 11111111 11111111 ACBBBACCCCCCAABABBBAA 8 111111111 111111111 CAAABAAACCCCBBCBBBCACBAB 9 1111111111 1111111111 ABAAACBBCCCCCCCBAAABAACBBBB 10 1111...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0
result:
ok Accepted!!!
Test #6:
score: 20
Accepted
time: 2577ms
memory: 4024kb
input:
60 1 1 11 11 BCA 2 111 111 ACCBAB 3 1111 1111 BACCACBBA 4 11111 11111 AAABBCBCBACC 5 111111 111111 AABBBBCCBCCAACA 6 1111111 1111111 AAACCBCCCAABACBBBB 7 11111111 11111111 AAACACCACBBAABBCBCCBB 8 111111111 111111111 AAACAAABBBBBBBCBACCCACCC 9 1111111111 1111111111 BBCCACCCACCACCBAABBAAAABBBB 10 1111...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1
result:
ok Accepted!!!
Test #7:
score: 20
Accepted
time: 2585ms
memory: 4072kb
input:
60 1 1 11 11 BCA 2 111 111 ACCABB 3 1111 1111 CAABBBCAC 4 11111 11111 BBCCBCCABAAA 5 111111 111111 BAABBBCCCCCAABA 6 1111111 1111111 AACACCCCBABBBCAABB 7 11111111 11111111 AACBBCBBBCCCCCAAABBAA 8 111111111 111111111 AAAABBCBBBBCBBCCCCCCAAAA 9 1111111111 1111111111 ABBBBBBBBCCBCAACCACAACCAAAC 10 1111...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1
result:
ok Accepted!!!
Test #8:
score: 20
Accepted
time: 2579ms
memory: 4012kb
input:
60 1 1 11 11 ABC 2 111 111 AABCBC 3 1111 1111 ABAACBBCC 4 11111 11111 AABCCBBBCACA 5 111111 111111 AAACCABBBACBCCB 6 1111111 1111111 AABBBBBBCCACAACACC 7 11111111 11111111 AAAABBBBBBCCACCCCCBAA 8 111111111 111111111 ACCBABBABBBBBCCCACCCAAAA 9 1111111111 1111111111 BAAAABCCCCCCCBBAABAACABCBBB 10 1111...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0
result:
ok Accepted!!!
Test #9:
score: 20
Accepted
time: 2576ms
memory: 3952kb
input:
60 1 1 11 11 CAB 2 111 111 CCAABB 3 1111 1111 ACCCABBAB 4 11111 11111 AAABBBBCCACC 5 111111 111111 BCACCCCBAAAABBB 6 1111111 1111111 CAAACABABACCCBCBBB 7 11111111 11111111 ACAAACBCCCCBCAABBABBB 8 111111111 111111111 ACCAACACCCCCABABAABBBBBB 9 1111111111 1111111111 AACAAAAAACBCCBCBACBBBBBBCCC 10 1111...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1
result:
ok Accepted!!!
Test #10:
score: 20
Accepted
time: 2560ms
memory: 3972kb
input:
60 1 1 11 11 BCA 2 111 111 ACACBB 3 1111 1111 AABCCCABB 4 11111 11111 CBCCCABABABA 5 111111 111111 ACACCCAABBCBABB 6 1111111 1111111 BACAAAACCBABCBCBCB 7 11111111 11111111 AAAAABBBBCCBBCCCCACAB 8 111111111 111111111 AACCCCCCABAAACAABCBBBBBB 9 1111111111 1111111111 AABAAAABCCCCABCCCABBCCABBBB 10 1111...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1
result:
ok Accepted!!!
Test #11:
score: 20
Accepted
time: 2576ms
memory: 4024kb
input:
60 1 1 11 11 BCA 2 111 111 CBBCAA 3 1111 1111 AABABCCCB 4 11111 11111 BABCBBCAAACC 5 111111 111111 AAACBBBBBCAACCC 6 1111111 1111111 BBBBBCCCCCCAABAAAA 7 11111111 11111111 BAAAABAACCCABBCCBBBCC 8 111111111 111111111 ABABBBBBCBCCCACCCCAAABAA 9 1111111111 1111111111 AAAABBAABCABACCCACCCBBCBCBB 10 1111...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1
result:
ok Accepted!!!
Subtask #2:
score: 0
Wrong Answer
Dependency #1:
100%
Accepted
Test #12:
score: 20
Accepted
time: 814ms
memory: 3892kb
input:
60 2 1 01 11 ABC 2 101 001 ACBABC 3 0011 1000 AAACBBCBC 4 11100 00100 BACABCABACBC 5 001101 110010 ACBABCCABBCCAAB 6 0101010 1000011 CABBAAACACBBCCABCB 7 10010111 10100111 CABAAACBBAACBCACBBBCC 8 100101000 100000110 BACBCACBBAABCCCABCBAACBA 9 1100010100 0111110011 CAABCBBABCACBCACABCABAACBBC 10 0001...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1
result:
ok Accepted!!!
Test #13:
score: 0
Wrong Answer
time: 759ms
memory: 4012kb
input:
60 2 1 01 01 CAB 2 011 101 ABCCBA 3 1111 0000 CBBAACCBA 4 00011 10011 BCCBCCABABAA 5 011111 111011 ACBBABCBCCAACBA 6 1011101 1101000 CBABBCACBAABABCACC 7 00001111 11010100 BCACAABCBBBCCABABCACA 8 110110100 010010100 ABAABCABCABAACCCCBBBBCCA 9 0000111111 1011100011 BAAABBCCABBBBCABACBACACCACC 10 0011...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0
result:
wrong answer Your answer is wrong in testcase 60
Subtask #3:
score: 0
Time Limit Exceeded
Test #22:
score: 0
Time Limit Exceeded
input:
60 3 1 11 11 ??? 2 111 111 ?????? 3 1111 1111 ????????? 4 11111 11111 ???????????? 5 111111 111111 ??????????????? 6 1111111 1111111 ?????????????????? 7 11111111 11111111 ????????????????????? 8 111111111 111111111 ???????????????????????? 9 1111111111 1111111111 ??????????????????????????? 10 1111...
output:
result:
Subtask #4:
score: 0
Skipped
Dependency #1:
100%
Accepted
Dependency #3:
0%
Subtask #5:
score: 0
Skipped
Dependency #1:
100%
Accepted
Dependency #2:
0%