QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#856947 | #9536. Athlete Welcome Ceremony | CharwingHawk | WA | 47ms | 119988kb | C++17 | 11.5kb | 2025-01-14 21:11:04 | 2025-01-14 21:11:04 |
Judging History
answer
//https://mirror.codeforces.com/group/hiEODjQtaL/contest/105486/problem/B
#include <bits/stdc++.h>
using namespace std;
#define int long long
//宏函数
#define KE ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)
#define flt(x) cout << fixed << setprecision(x);
#define all(x) (x).begin(), (x).end()
#define bcount(t) __builtin_popcount(t)
#define legal(x,lo,hi) (lo <= x && x <= hi)
#define Mod(x,m) (((x) % m + m) % m)
#define flip(x) reverse(x)
#define lowbit(x) (x&(-x))
#define bemax(x,y) x = max(x, y)
#define pb push_back
#define elif else if
#define endl '\n'
//调试部分
#define AA cerr << "AA" << endl;
#define __ << " " <<
//常量部分
const int N = 1e5 + 10;
const int inf = 1e18;
const int mod = 1e9 + 7;
typedef pair<int, int> pii;
int dp[155][155][155][3];
int pre[155][155][155];
void solve(){
int n,q; cin>>n>>q;
string s; cin>>s;
int l = s.size();
int unknow[305],cnt = 0;
for(int cur=0;cur<s.size();cur++){
if (s[cur] == '?') unknow[++cnt] = cur;
}
for(int a = 0;a<=151;a++){
for(int b = 0;b<=151;b++){
for(int c = 0;c<=151;c++){
for(int cur = 0;cur<=2;cur++){
dp[a][b][c][cur] = 0;
}
}
}
}
if (!legal(unknow[1]-1,0,l-1)){
if (!legal(unknow[1]+1,0,l-1)){
dp[1][0][0][0] = 1; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 1; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 1;
}
else{
if (s[unknow[1]+1] == 'a'){
dp[1][0][0][0] = 0; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 1; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 1;
}
if (s[unknow[1]+1] == 'b'){
dp[1][0][0][0] = 1; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 0; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 1;
}
if (s[unknow[1]+1] == 'c'){
dp[1][0][0][0] = 1; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 1; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 0;
}
if (s[unknow[1]+1] == '?'){
dp[1][0][0][0] = 1; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 1; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 1;
}
}
}
else{
if (s[unknow[1]-1] == 'a'){
if (!legal(unknow[1]+1,0,l-1) || (legal(unknow[1]+1,0,l-1) && s[unknow[1]+1] == '?')){
dp[1][0][0][0] = 0; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 1; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 1;
}
else{
if (s[unknow[1]+1] == 'a'){
dp[1][0][0][0] = 0; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 1; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 1;
}
if (s[unknow[1]+1] == 'b'){
dp[1][0][0][0] = 0; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 0; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 1;
}
if (s[unknow[1]+1] == 'c'){
dp[1][0][0][0] = 0; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 1; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 0;
}
}
}
if (s[unknow[1]-1] == 'b'){
if (!legal(unknow[1]+1,0,l-1) || (legal(unknow[1]+1,0,l-1) && s[unknow[1]+1] == '?')){
dp[1][0][0][0] = 1; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 0; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 1;
}
else{
if (s[unknow[1]+1] == 'a'){
dp[1][0][0][0] = 0; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 0; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 1;
}
if (s[unknow[1]+1] == 'b'){
dp[1][0][0][0] = 1; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 0; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 1;
}
if (s[unknow[1]+1] == 'c'){
dp[1][0][0][0] = 1; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 0; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 0;
}
}
}
if (s[unknow[1]-1] == 'c'){
if (!legal(unknow[1]+1,0,l-1) || (legal(unknow[1]+1,0,l-1) && s[unknow[1]+1] == '?')){
dp[1][0][0][0] = 1; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 1; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 0;
}
else{
if (s[unknow[1]+1] == 'a'){
dp[1][0][0][0] = 0; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 1; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 0;
}
if (s[unknow[1]+1] == 'b'){
dp[1][0][0][0] = 1; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 0; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 0;
}
if (s[unknow[1]+1] == 'c'){
dp[1][0][0][0] = 1; dp[1][0][0][1] = 0; dp[1][0][0][2] = 0;
dp[0][1][0][0] = 0; dp[0][1][0][1] = 1; dp[0][1][0][2] = 0;
dp[0][0][1][0] = 0; dp[0][0][1][1] = 0; dp[0][0][1][2] = 0;
}
}
}
}
for(int a = 0;a<=150;a++){
for(int b = 0;b<=150;b++){
for(int c = 0;c<=150;c++){
int nxt = a+b+c+1;
int sig = (dp[a][b][c][0] + dp[a][b][c][1] + dp[a][b][c][2]) %mod;
if (nxt <= 1) continue;
if (nxt > cnt) break;
if (!legal(unknow[nxt]+1,0,l-1) || (legal(unknow[nxt]+1,0,l-1) && s[unknow[nxt]+1] == '?')){
if (s[unknow[nxt]-1] == 'a') dp[a][b+1][c][1] = (dp[a][b+1][c][1] + sig) %mod;
if (s[unknow[nxt]-1] == 'a') dp[a][b][c+1][2] = (dp[a][b][c+1][2] + sig) %mod;
if (s[unknow[nxt]-1] == 'b') dp[a+1][b][c][0] = (dp[a+1][b][c][0] + sig) %mod;
if (s[unknow[nxt]-1] == 'b') dp[a][b][c+1][2] = (dp[a][b][c+1][2] + sig) %mod;
if (s[unknow[nxt]-1] == 'c') dp[a+1][b][c][0] = (dp[a+1][b][c][0] + sig) %mod;
if (s[unknow[nxt]-1] == 'c') dp[a][b+1][c][1] = (dp[a][b+1][c][1] + sig) %mod;
if (s[unknow[nxt]-1] == '?') dp[a+1][b][c][0] = Mod(dp[a+1][b][c][0] + sig - dp[a][b][c][0],mod);
if (s[unknow[nxt]-1] == '?') dp[a][b+1][c][1] = Mod(dp[a][b+1][c][1] + sig - dp[a][b][c][1],mod);
if (s[unknow[nxt]-1] == '?') dp[a][b][c+1][2] = Mod(dp[a][b][c+1][2] + sig - dp[a][b][c][2],mod);
}
else{
if (s[unknow[nxt]+1] == 'a'){
if (s[unknow[nxt]-1] == 'a') dp[a][b+1][c][1] = (dp[a][b+1][c][1] + sig) %mod;
if (s[unknow[nxt]-1] == 'a') dp[a][b][c+1][2] = (dp[a][b][c+1][2] + sig) %mod;
if (s[unknow[nxt]-1] == 'b') dp[a][b][c+1][2] = (dp[a][b][c+1][2] + sig) %mod;
if (s[unknow[nxt]-1] == 'c') dp[a][b+1][c][1] = (dp[a][b+1][c][1] + sig) %mod;
if (s[unknow[nxt]-1] == '?') dp[a][b+1][c][1] = (dp[a][b+1][c][1] + sig - dp[a][b][c][1]) %mod;
if (s[unknow[nxt]-1] == '?') dp[a][b][c+1][2] = (dp[a][b][c+1][2] + sig - dp[a][b][c][2]) %mod;
}
if (s[unknow[nxt]+1] == 'b'){
if (s[unknow[nxt]-1] == 'a') dp[a][b][c+1][2] = (dp[a][b][c+1][2] + sig) %mod;
if (s[unknow[nxt]-1] == 'b') dp[a+1][b][c][0] = (dp[a+1][b][c][0] + sig) %mod;
if (s[unknow[nxt]-1] == 'b') dp[a][b][c+1][2] = (dp[a][b][c+1][2] + sig) %mod;
if (s[unknow[nxt]-1] == 'c') dp[a+1][b][c][0] = (dp[a+1][b][c][0] + sig) %mod;
if (s[unknow[nxt]-1] == '?') dp[a+1][b][c][0] = (dp[a+1][b][c][0] + sig - dp[a][b][c][0]) %mod;
if (s[unknow[nxt]-1] == '?') dp[a][b][c+1][2] = (dp[a][b][c+1][2] + sig - dp[a][b][c][2]) %mod;
}
if (s[unknow[nxt]+1] == 'c'){
if (s[unknow[nxt]-1] == 'a') dp[a][b+1][c][1] = (dp[a][b+1][c][1] + sig) %mod;
if (s[unknow[nxt]-1] == 'b') dp[a+1][b][c][0] = (dp[a+1][b][c][0] + sig) %mod;
if (s[unknow[nxt]-1] == 'c') dp[a+1][b][c][0] = (dp[a+1][b][c][0] + sig) %mod;
if (s[unknow[nxt]-1] == 'c') dp[a][b+1][c][1] = (dp[a][b+1][c][1] + sig) %mod;
if (s[unknow[nxt]-1] == '?') dp[a+1][b][c][0] = (dp[a+1][b][c][0] + sig - dp[a][b][c][0]) %mod;
if (s[unknow[nxt]-1] == '?') dp[a][b+1][c][1] = (dp[a][b+1][c][1] + sig - dp[a][b][c][1]) %mod;
}
}
}
}
}
for(int a = 0;a<=150;a++){
for(int b = 0;b<=150;b++){
for(int c = 0;c<=150;c++){
if (a+b+c == cnt){
pre[a][b][c] = (dp[a][b][c][0] + dp[a][b][c][1] + dp[a][b][c][2]) %mod;
}
}
}
}
for(int a = 0;a<=150;a++){
for(int b = 0;b<=150;b++){
for(int c = 1;c<=150;c++){
pre[a][b][c] = (pre[a][b][c] + pre[a][b][c-1]) %mod;
}
}
}
for(int a = 0;a<=150;a++){
for(int b = 1;b<=150;b++){
for(int c = 0;c<=150;c++){
pre[a][b][c] = (pre[a][b][c] + pre[a][b-1][c]) %mod;
}
}
}
for(int a = 1;a<=150;a++){
for(int b = 0;b<=150;b++){
for(int c = 0;c<=150;c++){
pre[a][b][c] = (pre[a][b][c] + pre[a-1][b][c]) %mod;
}
}
}
for(int cur=0;cur<q;cur++){
int a,b,c; cin>>a>>b>>c;
a = min(150ll,a);
b = min(150ll,b);
c = min(150ll,c);
cout<<pre[a][b][c]<<endl;
}
}
signed main(){
KE;
int T = 1;
// cin >> T;
// flt(3);
while(T--){
solve();
}
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 28ms
memory: 119396kb
input:
6 3 a?b??c 2 2 2 1 1 1 1 0 2
output:
3 1 1
result:
ok 3 lines
Test #2:
score: 0
Accepted
time: 30ms
memory: 119524kb
input:
6 3 ?????? 2 2 2 2 3 3 3 3 3
output:
30 72 96
result:
ok 3 lines
Test #3:
score: 0
Accepted
time: 30ms
memory: 117980kb
input:
1 1 ? 0 1 1
output:
2
result:
ok single line: '2'
Test #4:
score: 0
Accepted
time: 24ms
memory: 117764kb
input:
10 10 acab?cbaca 0 2 0 1 1 2 4 2 3 1 1 1 3 5 1 0 5 2 2 2 0 1 2 5 4 3 0 1 1 3
output:
0 1 1 1 1 0 1 1 1 1
result:
ok 10 lines
Test #5:
score: 0
Accepted
time: 27ms
memory: 119900kb
input:
10 10 ?c?c?cbac? 10 5 1 5 8 7 9 2 6 5 7 1 5 2 6 5 6 5 5 10 3 9 1 10 2 5 9 1 2 9
output:
16 16 11 16 11 16 16 5 11 0
result:
ok 10 lines
Test #6:
score: 0
Accepted
time: 28ms
memory: 119908kb
input:
50 100 ?abacbacab?cbcbcb?acabcbabcbcacbababc?caba?acacbca 8 3 8 2 4 8 8 7 3 0 9 2 10 8 7 7 6 5 4 10 2 6 9 3 3 6 6 9 10 8 2 5 8 8 1 0 3 5 0 1 0 6 5 0 8 6 5 5 1 7 9 7 7 10 4 7 5 6 6 4 10 1 2 4 1 7 10 0 8 7 6 3 1 9 1 4 7 2 8 4 0 8 6 1 5 10 4 5 8 2 5 8 4 4 5 9 5 2 1 1 10 9 4 10 1 8 4 3 8 9 9 8 0 1 0 8 0...
output:
8 8 8 0 8 8 6 8 8 8 8 0 0 0 1 8 4 8 8 8 2 4 1 8 1 6 0 2 8 6 8 8 1 4 2 8 8 0 0 8 2 0 8 8 8 4 8 8 8 8 2 0 0 4 8 8 1 8 7 6 7 0 8 8 8 0 4 7 8 4 0 8 0 4 8 8 8 7 8 4 7 2 8 8 8 0 2 2 8 8 8 4 4 0 8 0 8 8 1 1
result:
ok 100 lines
Test #7:
score: 0
Accepted
time: 28ms
memory: 119836kb
input:
50 100 b????????bca?????c?b??ca?acac?b?b???ca?ab???a?a??? 35 43 36 12 49 47 7 11 34 38 44 22 42 17 10 49 8 38 18 26 44 6 18 14 28 29 6 48 32 47 29 15 48 1 5 33 24 17 18 10 27 32 19 10 34 2 23 9 14 24 39 46 12 34 9 49 26 21 8 46 43 43 3 31 16 2 8 27 7 24 41 35 17 25 31 0 13 47 24 31 23 33 40 30 36 39...
output:
34272000 31599360 497244 34272000 17637520 12290752 34272000 93044 415832 34272000 34272000 0 34272000 16360704 27933952 0 34272000 33886976 7896832 12290752 718 24 0 34272000 34272000 0 34272000 34272000 34272000 32254720 0 5666944 34256640 34272000 34272000 12290752 30493248 34256640 20630016 0 10...
result:
ok 100 lines
Test #8:
score: 0
Accepted
time: 27ms
memory: 118112kb
input:
100 1000 c?cbababcabacbacbacacbacabcbabababacababcbcab?cbabacbacbcbcacbab?bcabcbcababcacbabacbcb?babcbab?baca 13 11 4 4 17 20 14 5 2 16 14 15 8 12 17 19 5 11 5 17 12 20 7 6 19 10 1 6 5 0 13 1 9 7 17 1 20 4 16 11 12 18 19 2 16 18 1 11 19 16 3 7 1 0 6 9 16 6 9 16 6 20 7 0 16 20 1 2 8 16 5 20 18 14 18 ...
output:
16 15 14 16 16 16 16 16 8 2 16 8 16 16 16 16 16 2 16 16 16 0 1 16 16 5 1 5 16 16 16 16 16 15 16 13 16 15 2 16 16 1 8 16 16 16 15 0 16 15 16 16 16 16 8 8 16 16 16 16 16 16 8 16 16 1 8 8 16 16 1 16 1 0 16 2 2 16 7 16 16 8 16 16 16 16 1 16 14 16 16 16 16 5 16 16 14 16 11 16 15 11 2 1 8 16 16 7 16 5 16 ...
result:
ok 1000 lines
Test #9:
score: 0
Accepted
time: 33ms
memory: 118092kb
input:
100 1000 ?????c??????????????????????????b???a????a?????????????????????????c???????????????????????????????? 43 38 20 27 40 32 39 27 33 28 50 43 50 3 46 38 46 14 42 48 10 45 25 28 49 10 49 38 17 42 41 49 22 41 18 44 46 47 25 17 44 35 34 43 22 47 42 32 32 44 40 36 41 24 45 38 45 49 44 18 42 34 32 43...
output:
490475656 143989836 119661929 707864467 10104 219100551 479284703 764218529 903846231 659694548 204287063 105920502 191779504 182802705 215438611 938692318 797581204 903917420 893995828 287222624 578695829 95654849 457810426 709349795 85961844 923330494 783007506 111119718 295402274 241594071 551680...
result:
ok 1000 lines
Test #10:
score: 0
Accepted
time: 31ms
memory: 119988kb
input:
100 1000 c???cacacbcab?cb?acb???ac?bab?bcbcbc?c?bcbcaba??b?ba?c?aca?a?bac?cbcbcba??ca?b????ac?baba?ab?cba?c?c 99 70 32 52 98 84 12 78 77 84 8 87 16 36 0 48 70 100 25 4 15 95 54 35 33 35 90 20 4 69 6 11 76 27 96 48 16 24 18 99 48 1 43 54 35 9 81 75 27 58 52 50 94 14 29 67 27 59 68 53 42 31 46 12 90 2...
output:
380160 380160 226896 64156 0 380160 92 380160 380160 92 0 380160 379648 0 380160 22500 380160 380160 380160 380160 380160 226896 380160 380160 226896 0 380160 380160 380160 380160 152672 380160 5624 226896 380160 380160 379648 0 380160 380160 366848 380160 226896 380160 92 374912 5624 380160 380160 ...
result:
ok 1000 lines
Test #11:
score: 0
Accepted
time: 39ms
memory: 119652kb
input:
300 100000 abcacacbabacbcababcacacb?babacbcbacbcababcbcbabcacbcbacacabacacacbacbcbcacbabacbcbcbabcacbababcabcabcabababacbcacbacabcbacbacacacbababababacbcababcbcacacbcbabacabcabababcabacbcbcbabcabacbabacacbcbcacacacbcabcbabcbcabababababcacabcabababcbcbcbcbcabacbabacbabcacbcababacacbcbababababcacacaba...
output:
1 2 2 2 2 1 2 2 2 2 1 1 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 1 1 2 2 2 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 0 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 1 2 2 1 2 2 2 2 1 2 2 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 2 2 1 2 2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 2 2 ...
result:
ok 100000 lines
Test #12:
score: 0
Accepted
time: 45ms
memory: 119396kb
input:
300 100000 bcacbacacabacacbacacbabcabcacabcabcbcaba?cacbabcbacbabcbacacabacabcbacabcacacbcbabcbcabcabacbacbacabacabababcbcbcbabcbacbacabcacacabacbcbababcbcabacbabcbabacabcbabcbababababcbcbabacbacacbcabcabcbcbcbcabacabacacacbcbacabacbabca?acacbcacacbcbabacbcbcabca?babcacbc?acbacabacbcbcbcbacabababacb...
output:
4 4 4 4 0 4 4 4 4 4 4 4 4 4 0 1 3 3 4 4 4 1 4 0 4 0 4 4 4 4 4 4 4 0 4 1 1 4 4 0 4 3 4 4 4 4 4 4 4 3 4 1 1 3 4 0 4 4 3 4 4 4 4 4 4 4 4 4 4 0 4 4 4 3 4 3 4 4 4 1 4 3 0 4 4 4 4 4 0 4 0 4 4 4 4 1 4 4 4 4 4 0 1 4 4 1 4 0 4 3 4 0 4 3 1 0 4 4 1 1 4 4 4 3 4 4 4 3 0 4 1 4 4 4 0 4 4 4 4 1 0 4 1 0 4 4 4 4 4 4 ...
result:
ok 100000 lines
Test #13:
score: 0
Accepted
time: 47ms
memory: 119776kb
input:
300 100000 bcbabcab?bab??acacbcabacbacbcacacbabcab?bcbcb?bababcabcabcabca?abcbc?bcacacb?abababcbcbcbcbaba?cba?abcabc?ababacbcbc?acbabcacacbabcab?ca?b?babcbacbacbcbcbacbc?c?cababcacbc?bcbcabcacbabc?acbabcbacac?cbcb?abcbabacabcbacabcacababcbabcbcb??bacbcbacabc?cabacac?cab?cabacacbcacacbabacacabcab?bac...
output:
20336 14528 22504 24576 24576 16992 24576 24576 24576 0 24576 1500 24576 24576 24576 0 23592 7808 24576 0 24576 23592 24576 24576 0 640 24576 2576 24392 24576 624 24576 24576 0 8 24448 8 24576 104 0 24576 24576 24392 0 0 24576 24576 24576 0 24576 24392 24576 24576 24576 23488 24576 24576 24576 24448...
result:
ok 100000 lines
Test #14:
score: -100
Wrong Answer
time: 45ms
memory: 119548kb
input:
300 100000 cbabacacabcaca?abcb?b??cbc??cbacb?acab?b?bcabc?a??bab?a?a?a?ca?acac????c?c?caba?a???bcab?ababababc??babacacacbacabcb?bab?bcab?bacb???ba???c?b?cb?bababac?cb??acacbcba?acaca??bacb?cbc?c?bcbcbab?ba?c??bacacab?b?b?ac??babcbcb?bcbcbcb?c?c?cbac?ba?a?abc?cab?bc?ca?abacaca?abc??ac?aca?a??ca?cac??...
output:
964413406 726709206 0 110704627 192317202 753035749 238645875 -163922530 0 0 67075693 196248 337185872 684300992 551066954 512400928 -105225800 441158600 632725062 60181080 460670453 301321033 206790308 549405433 258628038 0 719626090 0 800239318 716729053 580760175 749271169 414309213 431703326 -87...
result:
wrong answer 8th lines differ - expected: '836077477', found: '-163922530'