QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#856787#9970. Looping RPSIllusionaryDominance#WA 3842ms176792kbC++203.1kb2025-01-14 16:31:382025-01-14 16:31:38

Judging History

你现在查看的是最新测评结果

  • [2025-01-14 16:31:38]
  • 评测
  • 测评结果:WA
  • 用时:3842ms
  • 内存:176792kb
  • [2025-01-14 16:31:38]
  • 提交

answer

#include <bits/stdc++.h>

using namespace std;

typedef long long ll;
typedef __int128_t i128;

const int MAX_N = 100000 + 5;
const int MAX_M = 1000000 + 5;
const int Base = 5;
const ll P = 998244353998244347ll;

inline ll add(ll a, ll b) {return a + b < P ? a + b : a + b - P;}
inline ll mul(ll a, ll b) {return (i128)(a) * b % P;}

ll pw[MAX_M], pw2[MAX_M], ipw[MAX_M];

ll qpow(ll n) {return mul(pw2[n / (MAX_M - 1)], pw[n % (MAX_M - 1)]);}

int N, cnt[MAX_N], tot;
string str[MAX_N];
struct TrieNode{
    int sz, sum, son[3];
}node[MAX_M];
struct Hash{
    int n;
    ll ha[MAX_N];
    
    void init(const string &s) {
        n = s.size();
        for (int i = 1; i <= n; i ++) {
            ha[i] = (ha[i - 1] * Base + s[i - 1]) % P;
        }
    }
    
    ll query(int pref, ll len) {
        ll k = len / pref, r = len % pref;
        // pw[r] * (k times pref) + ha[r]
        // k times pref : ha[pref] * (pw[k*pref] - 1) * ipw[pref]
        return add(mul(mul(mul(ha[pref], ipw[pref]), add(qpow(k * pref), P - 1)), pw[r]), ha[r]);
    }
}ha;
map <pair <ll, int>, int> status;
ll ans;

void ins(const string &s) {
    int u = 0, len = 0;
    for (auto x : s) {
        int y = x != 1, z = 3 - x - y;
        ans += 1ll * node[node[u].son[y]].sum * node[node[u].son[z]].sum;
        status[pair((ll)len, y)] = node[node[u].son[y]].sum;
        status[pair((ll)len, z)] = node[node[u].son[z]].sum;
        int &v = node[u].son[x]; v = v ? v : ++ tot;
        cnt[++ len] = node[v].sz; node[u = v].sum ++;
    }
    node[u].sz ++;
}

int main() {
    ios::sync_with_stdio(false);
    cin.tie(0); cout.tie(0);
    
    static int Map[128];
    Map['K'] = 0;
    Map['N'] = 1;
    Map['P'] = 2;
    pw[0] = 1; pw2[0] = 1;
    auto power = [&](ll a, ll n) -> ll {
        ll ans = 1;
        while (n) {
            if (n & 1) ans = mul(ans, a);
            a = mul(a, a); n >>= 1;
        }
        return ans;
    };
    for (int i = 1; i < MAX_M; i ++) {
        pw[i] = pw[i - 1] * Base % P;
        ipw[i] = power(add(pw[i], P - 1), P - 2);
    }
    for (int i = 1; i < MAX_M; i ++) {
        pw2[i] = mul(pw2[i - 1], pw[MAX_M - 1]);
    }
    
    cin >> N;
    for (int i = 1; i <= N; i ++) {
        cin >> str[i];
        for (auto &x : str[i]) x = Map[x];
    }
    sort(str + 1, str + N + 1, [&](const string &i, const string &j) -> bool {return i.size() < j.size();});
    for (int i = 1; i <= N; i ++) {
        status.clear();
        ins(str[i]);
        ha.init(str[i]);
        for (int j = 1; j < str[i].size(); j ++) {
            ll l = j + 1, r = 1ll * j * str[i].size() + 1;
            while (l < r) {
                ll mid = l + r >> 1;
                if (ha.query(j, mid) == ha.query(str[i].size(), mid)) l = mid + 1;
                else r = mid;
            }
            l --;
            if (l >= 1ll * j * str[i].size()) continue;
            int x = str[i][l % str[i].size()], y = str[i][l % j], z = 3 - x - y;
            ans += 1ll * status[pair(l, z)] * cnt[j];
            status[pair(l, y)] += cnt[j];
        }
    }
    cout << ans << '\n';
    
    return 0;
}

详细

Test #1:

score: 100
Accepted
time: 501ms
memory: 32268kb

input:

6
P
PN
KK
N
PKK
PN

output:

6

result:

ok 1 number(s): "6"

Test #2:

score: 0
Accepted
time: 503ms
memory: 31408kb

input:

10
KKKNP
KNKPPKNK
KNKPP
KNKPPKN
KKKN
NNKNNNKNNNKNNNKNNNKNNNKNNNKNNPN
NNKN
NPPN
NNKNNNKNNNKNNNKNNNKNNNKNNNK
KKKNN

output:

3

result:

ok 1 number(s): "3"

Test #3:

score: 0
Accepted
time: 507ms
memory: 31796kb

input:

10
NNNPNNNPNNNPNNNK
KKN
NNNP
KKP
NNNPNNNPNNNPN
KKNKKNKKPN
KNNPNPNKKKNPPKNKKKNKNKKNKPPPNKKPKP
KKPK
KKNKKNK
KKPKKN

output:

3

result:

ok 1 number(s): "3"

Test #4:

score: 0
Accepted
time: 502ms
memory: 31252kb

input:

10
K
PPPNNPPPNNPPPNNPPPNNPPPNNPPPNNPPPNNPPPNNP
PPKP
PPPNNPPPNNPPPNNPPPNNPPPNNPPPNNPPPNNPPPNNPPPK
P
K
N
P
PPPNN
N

output:

25

result:

ok 1 number(s): "25"

Test #5:

score: 0
Accepted
time: 504ms
memory: 30992kb

input:

10
NPNKP
NNNNKNNNNPP
PPKPNNNNPNKKKN
NPNKPNP
NNNNKN
NNNNK
NKNPKKPNPKKNPNKN
NKNPKKPNPKKNPNK
NKNPKKPNPKKNP
NPNKPNPN

output:

30

result:

ok 1 number(s): "30"

Test #6:

score: 0
Accepted
time: 503ms
memory: 32416kb

input:

10
KPKKPKKPKKPKKP
KPKKPKKPKKPKKPKNK
PNPNP
KPK
PN
NPNPNNPNPNK
NKKPKKPKPPKKPKKKKPKNKPPKPPNKNP
NPNPNNP
PNPNPK
NPNPN

output:

39

result:

ok 1 number(s): "39"

Test #7:

score: 0
Accepted
time: 500ms
memory: 32364kb

input:

4
KKPKKPKKPKKPKKPKKPKKPKKPKKPKKPKKPKKPKKPKKPKKPK
NN
KKP
KKPKKPKKPKKPKKPKKPKKPKKPKKPKKPKKPKKPKKPKKPKKPKKNK

output:

1

result:

ok 1 number(s): "1"

Test #8:

score: 0
Accepted
time: 503ms
memory: 31640kb

input:

7
KPKN
KPKNKPKNKPKNKPKK
NKPPNNNPKKNN
KPPKPKPPKPKPPKPKPPKPKPP
KPKNKPKNKPKNKP
KPPKP
KPPKPKPPKPKPPKPKPPKPKPPKPN

output:

2

result:

ok 1 number(s): "2"

Test #9:

score: 0
Accepted
time: 500ms
memory: 31412kb

input:

10
NKNNKNKN
KPKN
PKPN
PNNNNNNKKNNPNNKNPPKPPNPNPPKKKPNNNPNPKKNK
PKPNPKP
PKPNPK
KPKNKP
NKNNKNKNNKNPN
KPKNKPK
NKNNK

output:

39

result:

ok 1 number(s): "39"

Test #10:

score: 0
Accepted
time: 504ms
memory: 31584kb

input:

300
NKNPNK
NKKNKK
KPPNPN
KKPNKNK
PKKNPKP
KPKPPPN
NNKPPNN
NPKPPKN
KNNKKPK
PPPNPKK
NKPKNP
KPKNNPP
NNPKNP
PNPPPKN
PKKPNP
PPNNKK
PKNKNK
PKNPNK
NKNPNPP
KNKNNPN
NKPPPPK
NNPPKKN
KNKKNPK
KKNNPKN
PPPKNK
NPPPPPP
NKKPKPP
KNKNPPK
KPKPNNK
NPNNKN
PNPNKP
PNPKKP
KKKKPKN
NNNKNPK
NPNKPNK
NNNKNK
PPKKNKP
NNNKPPK
KPNKPP...

output:

1102940

result:

ok 1 number(s): "1102940"

Test #11:

score: 0
Accepted
time: 502ms
memory: 32584kb

input:

91
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKN
KKKKKKKKP
PNPKPPNP
KKKN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKP
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKP
KKKKKKKKKKKKKKKKKKKKKKN
KKKKKKKN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKP
KKKKKKKKKKKKP
...

output:

2151

result:

ok 1 number(s): "2151"

Test #12:

score: 0
Accepted
time: 502ms
memory: 30924kb

input:

72
PKPPKPPKPPKPPKPPN
PKP
NNNNNK
NPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNPNNP
NNPNNPNNPNNPNNPNNK
NP
PPPPPPN
PKPPKPPKPPKPPKPP
PPPPKPP
PPK
NNNNNPP
NNNNPNNNNPNNNNPN
KPNNNKKPPKPKKNPPKKNNKPKPKPKPPPKPPKPNNKPPKPPPNNNKKNNPKKKKKN...

output:

14794

result:

ok 1 number(s): "14794"

Test #13:

score: 0
Accepted
time: 504ms
memory: 31960kb

input:

91
PKKK
KKKNKKKKNKKKKNKK
PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPKP
PPPPNPPPPNPPPPNPPPPNPPPPK
PPPPNNPPPPPNNPPPPPNNPPPPPNNPPPPK
NKNKNKNKN
PNPPNPKPPNPPN
NPKNPKNPKNPKNPKNPKNPKNPKNP
PNPPNPKPPNP
KKPK
KKKKKNKKKKKKNKKKKKPN
NPK
PPNKPPKPPNKPPPNKPPK
KKP
PNPPNPPNPPNPKK
PPPPPPNPPPPPPNPPPPPPNPPPPPPK
PPPPPPNPPP...

output:

24738

result:

ok 1 number(s): "24738"

Test #14:

score: 0
Accepted
time: 503ms
memory: 31932kb

input:

130
PKPKPKPKPNPKPKPKPKPKPN
NPNPNPNPN
N
PNKPNKP
PNKPK
NNNNKNNNNPPNNNNKNNNNNKNNNNPP
NNNNNNNNKNNNNNNNNKN
NK
K
NPPNKNPPN
NKNKNKNNKNKNKNNKNKNKNNKNKNKNKNNKNKNKNNKNKNKNNKNKNKNPN
PKPKPKPKPKPKPKPKPKPKPNKPKPKPKPKPKPKPKPKPKPKP
NNNNNNNNK
KKKN
PPPN
NNNNNNNNNNNNKN
NPKNPKNPP
PPPKNPPPKNPPPKNP
PPPPPNP
KKP
PKN
PPPPPN...

output:

86902

result:

ok 1 number(s): "86902"

Test #15:

score: 0
Accepted
time: 505ms
memory: 31388kb

input:

76
N
NKNKNNKNKNKN
KPKPKPKPKPKN
NK
KKKKKNK
NNPNNPNNKNNPNNPNNNPNNPNNKNNPNNPNNKNNPNNPNNNPNNPNNKNNPNNPNNPNNKNNPNNPNNNPNNPNNKNNPNNPNNKNNPNNPNNNPNNPNNKNNPNNPNNPNNKNNPNNPNNNPNNPNNKNNPNNPNNKNNPNNPNNNPNNPNNKNNPNNPNNPNNKNNPNNPNNNPNNPNNK
NNPNNPNNPNNPNNPNNPNNPNNPNNK
KKKKKKKKKKPKKKKKKKKKKNP
KKPKKPK
PPPPPPPPPPPN
...

output:

12533

result:

ok 1 number(s): "12533"

Test #16:

score: 0
Accepted
time: 504ms
memory: 31176kb

input:

35
KPKPKPKPKPKPKPKPKNKKPKPKPKPKPKPKPKPKPKNKKPKPKPKPKPKPKPKPKNKKPKPKPKPKPKPKPKPKPKNKKPKPKPKPKPKPKPKPKNKKPKPKPKPKPKPKPKPKPKNKKPKPKPKPKPKPKPKPKNKKPKPKPKPKPKPKPKPKPKNKKPKPKPKPKPKPKPKPKNKKP
P
KNKNKKNKNKNKKNKNKP
N
KKKKKKKKKKKKKKKKKKKKPKKKKKKKKKKKKKKKKKKKKKP
PNPNPNP
KPKPKPKPKPKPKPKPKNKKPKPKPKPKPKPKPKPKPKNK...

output:

1178

result:

ok 1 number(s): "1178"

Test #17:

score: 0
Accepted
time: 505ms
memory: 32052kb

input:

19
KPKPKPKPKKPKPKPKPKKPKPKPKPKKPKPKPKPKN
NPNPNNPNPNNP
NPNPNNPNPNNPNPNPNNPNPNNPNPNPNNPNPNNPNPNPNNPNPNNPNPNPNNPNPNNPNPNK
NPNPNNPNPNNPNPNPNNPNPNNPNPNPNNPNPNNPNPNPNNPNPNNPNPNPN
KPKNPKPKNPKPKKPKNPKPKNPKPKKPKNPKPKNPKPKKPKNPKPKNPKPKKPKNPKPKNPKPKKPKNP
NKKKPNKPKNKPPPNKPPNPNNNNPKPKPNKKNPNKKPNPNPKNKPPKKNNKPPKK...

output:

249

result:

ok 1 number(s): "249"

Test #18:

score: 0
Accepted
time: 507ms
memory: 31640kb

input:

32
NNKPNNNKPNNP
PNPPNPPNPPNPPNPK
PNP
NNPNNNPNNPNNNPNNPNNNPNNPN
P
NNPNNNPNNPNNNPNNPNNNPNNPNNNPNNK
NKNKNKNP
NNNNNNNNP
NPKNKNPKNKNPKNKNPKNKNPK
N
N
PPPPKP
N
KPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPKKPKPKPK...

output:

894

result:

ok 1 number(s): "894"

Test #19:

score: 0
Accepted
time: 506ms
memory: 31140kb

input:

300
PKK
KNP
PNPNPKPNPNPNPKPNPNPP
KNN
KPN
KNN
KKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNKKKNK
KKKN
...

output:

1120793

result:

ok 1 number(s): "1120793"

Test #20:

score: 0
Accepted
time: 605ms
memory: 35280kb

input:

45
PPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPPPPPPPPPKPP...

output:

2514

result:

ok 1 number(s): "2514"

Test #21:

score: 0
Accepted
time: 597ms
memory: 34756kb

input:

56
PNPPNPKNPNPPNPPNPKNPNPPNPPNPKN
NKN
PPPPPPNPPPPPPPNPPPPPPPNPPPPPPNPPPPPPPNPPPPPPPNPPPPPPPNPPPPPPNPPPPPPPNPPPPPPPNPPPPPPNPPPPPPPNPPPPPPPNPPPPPPPNPPPPPPNPPPPPPPNPPPPPPPNPPPPPPKPPPPPPNPPPPPPPNPPPPPPPNPPPPPPNPPPPPPPNPPPPPPPNPPPPPPPNPPPPPPNPPPPPPPNPPPPPPPNPPPPPPNPPPPPPPNPPPPPPPNPPPPPPPNPPPPPPNPPPPPPPNP...

output:

5856

result:

ok 1 number(s): "5856"

Test #22:

score: 0
Accepted
time: 591ms
memory: 35284kb

input:

55
K
PPPPPPPPPPPPPPPPNPKKPPPPPPPPPPPPPPPPPPNPKKPPPPPPPPPPPPPPPPPPNPKKPPPPPPPPPPPPPPPPNPKKPPPPPPPPPPPPPPPPPPNPKKPPPPPPPPPPPPPPPPPPNPKKPPPPPPPPPPPPPPPPKNPKNNPKPKPNPKKKKPKKPKKPPPP
PPNPPNPPPNPPNPPKPNPNPPNNNNK
KKKKKPPKKKKKPPKKKKKPPKKKKKNKKKKKPPKKKKKPPKKKKKPPKKKKKPPKKKKKNKKKKKPPKKKKKPPKKKKKPPKKKKKKKPPKKKK...

output:

5925

result:

ok 1 number(s): "5925"

Test #23:

score: 0
Accepted
time: 572ms
memory: 33320kb

input:

5000
PPK
PKN
NPK
KKN
PPN
NKK
NNP
KNK
KPP
NNP
NPP
KKN
NKK
KKK
PKN
NPP
PNK
NPK
KNP
PNP
KKN
NNK
PKK
PPP
KKN
NKP
KPK
KKK
PNK
PNK
NNK
KKP
KKK
NNK
PPP
PNP
PNP
KKN
NPN
PNK
NNK
PKK
PPN
KKP
PKK
NKP
KNP
PPK
NNK
PKP
PPN
KNP
PKK
NNN
KPP
KPN
KKN
PNP
NKK
KPP
NNN
NKP
NPK
NPP
PNN
NNK
KKP
PPP
NKP
KPN
KNN
PNN
NPP
KPP...

output:

5201172138

result:

ok 1 number(s): "5201172138"

Test #24:

score: 0
Accepted
time: 575ms
memory: 32384kb

input:

48
PPPNNPPKKNPKNNKKPKPKPPKNPPPKKPPNPNPKKPPPPPNPNPNPPPNPKPNPPPKKKNPKKPPPNPNNKKKKPKPPPPPPKPPNPKPNNPPPNPKKNPKNPPNKNNNNPNPNKNPKKKKNKNKKKPPNNKKKKNNPPNPNNNKNNPPKPPPKPKKKPPNNPNPKNKNPPPNNPPKKNPKNNKKPKPKPPKNPPPKKPPNPNPKKPPPPPNPNPNPPPNPKPNPPPKKKNPKKPPPNPNNKKKKPKPPPPPPKPPNPKPNNPPPNPKKNPKNPPNKNNNNPNPNKNPKKKKNKN...

output:

3732

result:

ok 1 number(s): "3732"

Test #25:

score: 0
Accepted
time: 578ms
memory: 33636kb

input:

31
PPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPPPPNPP...

output:

928

result:

ok 1 number(s): "928"

Test #26:

score: 0
Accepted
time: 581ms
memory: 34128kb

input:

67
KPNKKPNKKPNKKN
NP
KKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKKPKKKKKKKPKKKKKKK...

output:

10794

result:

ok 1 number(s): "10794"

Test #27:

score: 0
Accepted
time: 575ms
memory: 34148kb

input:

49
PNKPNKPNKPNKPNKPNNPNNNNNK
NPNNPNPNNPNPNNPNNPNPNNPNPNNPNPNNPNNPNPNNPNPNNPNNPNPNNPNPNNPNPNNPNNPNPNNPNPNNPNNP
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKP
N
PPPKPPPPKPPPPKPPPPKPPPPKPPPPK
PNKPNKPNKPNKPNKPNNPNNNNNKPNKPNKPNKPNKPNKPNNPNNNNNKPNKPNKPNKPNKPNKPNNPNNNNNKPNKP...

output:

2554

result:

ok 1 number(s): "2554"

Test #28:

score: 0
Accepted
time: 590ms
memory: 33680kb

input:

34
NNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNNPNNPNNPNNPNNPNNPNNNPNNPNNPN...

output:

938

result:

ok 1 number(s): "938"

Test #29:

score: 0
Accepted
time: 590ms
memory: 35928kb

input:

55
PPPPPPPPPPPPPPPKPPPPPPPPPPPPPPPPPKPPPPPPPPPPPPPPPKPPPPPPPPPPPPPPPPPKPPPPPPPPPPPPPPPN
NNNNNPNNNNNPNNNNNKNNNNNP
KPNKNPPKKNKNNKNPNKKPPNKKKKPPPPPNKKPNKPPKPPPPNPNNNNKKPNPKPKNKPKNKPPNPKKPKPPKPPKNKPPNKKPKKPPNPKKPPNPPNKKKNKPNKNPPKKNKNNKNPNKKPPNKKKKPPPPPNKKPNKPPKPPPPNPNNNNKKPNPKPKNKPKNKPPNPKKPKPPKPPKNKPPN...

output:

6093

result:

ok 1 number(s): "6093"

Test #30:

score: 0
Accepted
time: 603ms
memory: 34820kb

input:

19
NKNPNKNPNKNPNKNNKNPNKNPNKNPNKNNKNPNKNPNKNPNKNNKNP
PKPPKPPKNPKPPKPPKKNKNPNPKPPKPPKNPKPPKPPKKNKNPNPKPPKPPKNPKPPKPPKKNKNPNPKPPKPPKNPKPPKPPKKNKNPNPKPPKPPKNPKPPKPPKKNKNPNPKPPKPPKNPKPPKPPKKNKNPNPKPPKPPKNPKPPKPPKKNKNPNPKPPKPPKNPKPPKPPKNPKPPKPPKKNKNPNPKPPKPPKNPKPPKPPKKNKNPNPKPPKPPKNPKPPKPPKKNKNPNPKPPKPPK...

output:

6

result:

ok 1 number(s): "6"

Test #31:

score: 0
Accepted
time: 604ms
memory: 35100kb

input:

13
NNKNNNKNNNKNNNKNNNKNNNKNNNKNNNKNNKNNNKNNNKNNNKNNNKNNNKNNNKNNNKNNNKNNKNNNKNNNKNNNKNNNKNNNKNNNKNNNKNNKNNNKNNNKNNNKNNNKNNNKNNNKNNNKNNNKNNKNNNKNNNKNNNKNNNKNNNKNNNKNNNKNNNK
KPKPKPKPKPKPKPKPKPKPKPKKKPKPKPKPKPKPKPKPKPKPKPKPKKKPKPKPKPKPKPKPKPKPKPKPKNNKPKPNPNNNNKKKKKKKNNNNPPPPKPK
NNKNNNKNNNKNNNKNNNKNNNKNN...

output:

4

result:

ok 1 number(s): "4"

Test #32:

score: 0
Accepted
time: 825ms
memory: 32708kb

input:

100000
KPKPNKPKKK
NKNPNKKPPP
NNKNPPNNKP
KPKPKPKNPN
NKPKKKKKPP
NKPNPKKPPP
NNKPNPKPNN
PPPKNNKNKN
KNNNNKKNKP
NNNKPKPKNN
PKPKNKPPPP
NKNPNPKPNP
KKPPPPKPKP
PNKKNKKKKK
PKKNNNKPKK
KKNPNPKKNK
NNKPKPPPPK
KPNKKPKKKK
PPNNKPKNKP
KPNNNPNNPN
NKKNKPNPPK
KKNNPNKPNP
KNNNPPPNNP
PNPNNNKKNK
NPKPNNPKKN
NNNPPPKKKP
PPPPNNN...

output:

41666533063326

result:

ok 1 number(s): "41666533063326"

Test #33:

score: 0
Accepted
time: 840ms
memory: 34936kb

input:

90910
PKNNKKKNNKN
PPKPNNKPKNN
KPKNPNPKKPN
NPNNNNPPKKP
PPPPNNKPNKP
PPKPNPPPPPP
NKPKKPNKNNK
KKNKPPPPPKP
PPPPPNNPKKP
PKNKKPPKKPP
PKKPNNPNPNP
PNPNKNPPPPN
KPNNPKKKKKN
NKNKPNPPPKK
NNKPPNNKPNK
KKPNNKPNNNP
KPNPKPKNPPN
PPKNNKNNNKP
KNNNNNNNPPK
NNPKPNKNNNN
KKNPPNPNKNP
NPPPPKNNPNK
PNNPPNKNKPN
KNNPNNNNNKN
KPNPPN...

output:

31305270429104

result:

ok 1 number(s): "31305270429104"

Test #34:

score: 0
Accepted
time: 822ms
memory: 32944kb

input:

100000
PKNPPNNNKK
NNNNKPKPNN
PKKKKNNNNK
KPNNKPNNPN
KNKKPKNNKK
KPNKKPNKNN
NNNNNKNNPN
KPKNKNKNNN
NPKPNPNNPN
PKNPKNKNPN
KPNNPNKNNN
NNPNNNKKNN
NKPPPPKPKP
KNNPKNKKNK
NPKPNPNKNK
PNPNKKPKNN
NNKKNNKNNK
NPPPNPPPPK
NPNNNKKPPK
KNNNKPPNPK
NNKPKNNPKK
NKKKNPNNKN
KKNPKPNNPP
KPPPNKKNNP
NNKKNKKNPK
NNKPPNPPPK
PPNKKKP...

output:

41666482937811

result:

ok 1 number(s): "41666482937811"

Test #35:

score: 0
Accepted
time: 833ms
memory: 35960kb

input:

90910
NPNPNKPPKPK
PNKPKKKPNPN
PPPKKKNPNNK
KKKPPNNNPKN
NKPPPNNKPKN
PNNNPNKNKKN
PKNKKKNNNPP
PKNKKPPKNPK
KNPNPNNPKPP
KNPNNPKNKPN
NNNNPKNPNNN
PKPKNKPNNKK
NPKKKKNPNPP
KNPPNPNPPKP
KKNNPKNPKPN
PKKNPKNPNNK
KKKPKPKPKKN
NKPPNPNKKPP
KNPNNPKKPPK
NPKKNNPNNNP
KKNPPPPPKKN
KKPNPPPKNKK
NPKKNKPNNPK
NNKPNKPKPKN
PNPPPN...

output:

31305518480160

result:

ok 1 number(s): "31305518480160"

Test #36:

score: 0
Accepted
time: 812ms
memory: 32752kb

input:

100000
KNPPNPPKPP
KNKNKPNPNK
PKKPKKPKPPK
NPKNNNKNN
KPNPNPPP
NNNPKKNKKN
PPNNNNKKPK
PKKNKPPN
NPNPNNKPKN
PKKPNPPKKK
NKNKKKPKKPP
NNKKNNPN
NNKNNNKP
PKNPPNPNKP
NNKNPNNKNP
NKNPKPKN
NPPPNPNPNK
NKKNKKPPK
NNNNPNPKKN
PKNNNPNK
PKNPKKNKNN
KNKKKPNPNN
PPKNPKPNPP
KNKKKNNPP
PPNNNNNPP
PPPPKPPNK
NNKKKPNPKP
PPNPNNPKKN
...

output:

41665507715198

result:

ok 1 number(s): "41665507715198"

Test #37:

score: 0
Accepted
time: 815ms
memory: 33596kb

input:

100000
KKNKNNKKP
NKKPPPNKKKP
KKPPPNPKPKN
NKNNKPKN
PNPKPNNPN
NKKKPKNNN
NPKKKNPKPK
NKNKNKPKNN
PNNNNNNPPN
PPKKPPKPNPP
KNKKNNKPPP
NNKNPNKNNP
KKPNKPKPPN
KPPNNKPKKPK
PNKPPKKNNP
KNPKNKKPKPN
NKPKNPKNKK
NPKPNNKPNN
PNKKNNNKNN
KPKKKKPNK
NKPKKKNNKK
KKPNKNPK
KPPKKKPPPP
KKKKKNNKNK
KKPPKPKNPK
KNPNPNPKKNP
NNNKNNKPK...

output:

41665397403242

result:

ok 1 number(s): "41665397403242"

Test #38:

score: 0
Accepted
time: 979ms
memory: 38844kb

input:

94029
KKNNPNPKP
NKPKNKNP
KKPKKKNPPK
KKKPNKN
NNKKPKPKKP
NNKPPKNPNNK
PNPKKNNKNP
KPNKNPPNNK
PKKKPNNK
NNNKPNPPNP
PPNNKKKNNK
PNPPNKKNNK
KPKKKKPKPN
PNKNKPPPKN
NNPKKPNKN
NPKPNPNP
NNPPPKPPPN
NNNNPKKKPN
NNNKNPKNPK
NPNPPNNNKP
PPPNNKNKNN
NNKNPNKPPK
NKKNNNKKNP
PNNPPKKPPK
KKPKNKPKNK
PNPPKKPKPK
KPKPNPPPKN
PPPPPPK...

output:

34639649098238

result:

ok 1 number(s): "34639649098238"

Test #39:

score: 0
Accepted
time: 955ms
memory: 35596kb

input:

89563
NKKNNPPNPP
NPNPNKNNPP
PNPKKKKKN
PNPPKNPPNN
NPPKKPKPKP
NNPKPKPNKN
PPNPPNPNNN
KNNNNNKNNK
KNNPNKNNNK
KPPPNPKPPP
NNKNPKNPK
KPPNPNPPPP
KKNPKNNPKP
NKPPKPKKK
PPPNNNPK
PKNPNNNNNK
KKKNPPKPKK
PKPPNPNNPP
PPPNPNKKP
PPKPKKKPKK
NPPPKNPNNK
PKNKNKNK
NNNKPKPN
PPNPNNNPKN
PNPNNPNK
NPNNPPPKPP
NKKPPPNN
PNNKKKPNP
P...

output:

29934660369186

result:

ok 1 number(s): "29934660369186"

Test #40:

score: 0
Accepted
time: 1244ms
memory: 44216kb

input:

84434
PNNKNKNP
NKKNNKPNN
PPPNKNPPNK
NPPKPKKPP
KNNNNNPPP
NKKKNKPPN
NNPKPKPK
PPPKNPNKP
PPNKPKPKPN
NPKKPKKNKN
NNPKKKKNNN
NPKKNNNNKN
NKPKNPPPP
KNKPPNNPPN
KKNPNPNPN
PPPKKPPKKN
PNKKNKKKN
NNNNNPKKKK
KPPKNNNN
PPNKKPKKPP
KKPKKKKPPP
KKPNPPPKK
KNNNPKKPP
PNNPPPPPNP
PPNPNNNKP
PPPNKKKKPN
NPPKPKKKPK
NNPKNNKNPK
PNP...

output:

25080751336361

result:

ok 1 number(s): "25080751336361"

Test #41:

score: 0
Accepted
time: 834ms
memory: 34316kb

input:

100000
KNNKKNK
NNKPKKKKPN
PNPKKKKKNP
KKKKKPNKNK
PNNKPNPKNK
NKPKPNPKNN
KKPNPNKNNN
NNKKKNNKNK
KNKPNPPNNN
PNPPPPKPKK
PKPKKNP
NPPPNKPPN
PKNNPKNKNPN
NPNPPKKNKK
PPNNPPKPPNN
KKNNKNKNK
PPPPPNPNPKK
KPPNKKNKKP
PPNPNNKKKP
PKNPNPNNK
PNPPKNKNK
KNNNPPNNPN
NPKNNKPNP
KNNPNKNNKP
PNPPNNPPPN
KKKNKNNPKPK
NKKPPNPNNP
NNK...

output:

41666558834125

result:

ok 1 number(s): "41666558834125"

Test #42:

score: 0
Accepted
time: 869ms
memory: 35764kb

input:

100000
NPKPPPNKN
KPPNPNNPNP
KKPPPKNKPN
PKKNPKNNPP
NNNPPNKK
KKPPNKKNKN
PNNNNKNPK
PPKKKKPK
NKNKPKPP
KNPPKKKKKK
PPNKKNPPPKP
PPNPPPNPPK
KNNKNNNKKK
NKPPKNNPNK
KPNNNPNKPK
PPPNKPN
PNNPKNKPPK
NNNKNKKNNK
PKKNKNNNPP
NNKNKKPPKN
NKPKPPKPPN
NNNPKKPNKP
KPNNNNKKKP
PPKPNKNNNP
NPKPKKPNNPK
KNPKNNN
NNNNKKNNPK
NKPNKNKP...

output:

41666508623911

result:

ok 1 number(s): "41666508623911"

Test #43:

score: 0
Accepted
time: 1463ms
memory: 33856kb

input:

1431
KPKKKPPPNPKKNKKKNPNNNNNPNKPPKPPNNKKPNKPKPPKNPNKKKPKNPPNKKKPNKNKNPPKNNPPNKKNPKNPNKNKNPNNNPNNPPNKNNKNNPPNPNPKNKNPNNKPPKNNKNNPPKPNKNNKPPPNPNNKNKPKKPPNPNNNNPKNNKPPKNKPPPNNNNPNNNPNNNPPKPKKPPNPPKNKNNKNNNNNKPPNKPPPNNPPKNKKPPPPNKNPNPKPKPPPKKPNKNPPNPKKNNNPNPPKPPNPPKNNKPPPPPNPNPPNKNPKPPKKKKPNKPNNKPKKKNKP...

output:

181046

result:

ok 1 number(s): "181046"

Test #44:

score: 0
Accepted
time: 1451ms
memory: 32596kb

input:

2422
KKPNKNPPNNPPPKKPKPKKPNPKNNKKNNKPPPNKPNKPNNNKKPKNNKPPKKKPNPNKPPNPPNKKPKKPPNNKPKNNPPPKNPKPPKKNKNPPKNNPKNKKKPNKPKPKNKKPPKNPPNPNKNNNNPKKPPPNNPNPNKNPNKNKNNPKPNPPNKPKKKPNNKNPPKNNPKKKKKPNPNKKKPPKN
KKPNKNPPNNPPPKKPKPKKPNPKNNKKNNKPPPNKPNKPNNNKKPKNNKPPKKKPNPNKPPNPPNKKPKKPPNNKPKNNPPPKNPKPPKKNKNPPKNNPKNKKK...

output:

197656557

result:

ok 1 number(s): "197656557"

Test #45:

score: 0
Accepted
time: 1445ms
memory: 33832kb

input:

1425
KKKPNPKNNKNNPPPNPKNNPPPKPKNKPKKNNPKKKNKPKNNPKNKKPKNNNPNKKKKPPPNPKKKNPKNPPPNNKPPPPPNNNKNNKNNPPKKNNKKPKNKNKPKNKNPPNNKPNKKPNKKKPNPNPNKPKPNPNPNNPNKKNNPKPNNNKKNKPNKKPPKKPPPPKPPKKPKNPPNKKPPKPNNNKPKKPPPKN
KKKPNPKNNKNNPPPNPKNNPPPKPKNKPKKNNPKKKNKPKNNPKNKKPKNNNPNKKKKPPPNPKKKNPKNPPPNNKPPPPPNNNKNNKNNPPKKNN...

output:

86912

result:

ok 1 number(s): "86912"

Test #46:

score: 0
Accepted
time: 1441ms
memory: 32940kb

input:

1435
PPPPNKNNKPNPKNKPKNPKNPKNNPNNKPPPNKKPPPKNPKNPPKPNPKKPNPPKPPPKKKPNNPKPNPNNNKKNKPKPKKNKNKKPPNPPPNNKNKNPPKPPNPNNPKPKPKNNKPNNPKNPNNPNNKNPPNPPPKNNPNKPNPKNKKPNNKKKPKNPPKPPKPKPNNPPKKKNKNKPKKNNNKKNPKNNPPNKKNKPNNKKNPKPKPNPKKNPNNNPNPNPKPKKKNNNPNKKKNKNNPNNNNNPPKNPKNKNPNPKPPKNKNKNPNPNNPPNNKPPKNKNPKKKNNKPNNN...

output:

49002

result:

ok 1 number(s): "49002"

Test #47:

score: 0
Accepted
time: 1452ms
memory: 33580kb

input:

1431
NNNNNPKKKKKNPNNNKNNNPPNNKNNNNPPKKKNNNKKNKPPKNPNPPPNPNKKKNKNPPKPNNKPNPKKNPKPNKKNKNKKKKNNPNNNNNNNKNNNKNPKNNKPPKNNPPPNKKKNNNPKNNNNPKNPNKPNPKKPPPPPPPKKPNPKPPPNNNKKNKNKKPNNPNKPNNNKNNKKNPPKNKNNPPKKKKPPNPKNNKPPPNPKPNPNPPNPNPKPNNPPNNPPPKPKKPNPKPKKNNPNKNPKPPNNPKKKKKPPPPKKKPKKNKPNKKNKPPPKPKNPPPPKKKNPNKNN...

output:

33534

result:

ok 1 number(s): "33534"

Test #48:

score: 0
Accepted
time: 1648ms
memory: 32376kb

input:

1425
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK...

output:

22675

result:

ok 1 number(s): "22675"

Test #49:

score: 0
Accepted
time: 1935ms
memory: 46828kb

input:

1408
KNKPKNKPKNKPKNKPKNKNKPKNKPKNKPKNKPKNKNKPKNKPKNKPKNKPKNKNKPKNKPKNKPKNKPKNKNKPKNKPKNKPKNKPKNKKNKPKNKPKNKPKNKPKN
NPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPN...

output:

25747145

result:

ok 1 number(s): "25747145"

Test #50:

score: 0
Accepted
time: 2216ms
memory: 50184kb

input:

1260
NKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPNKPN...

output:

23649523

result:

ok 1 number(s): "23649523"

Test #51:

score: 0
Accepted
time: 1467ms
memory: 32784kb

input:

1434
KPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPKNKPK...

output:

396472

result:

ok 1 number(s): "396472"

Test #52:

score: 0
Accepted
time: 3842ms
memory: 176792kb

input:

831
KKKKPKKKKNKK
KKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPKKKKNKKKKPK
NNNNPN...

output:

2888770

result:

ok 1 number(s): "2888770"

Test #53:

score: -100
Wrong Answer
time: 1265ms
memory: 50836kb

input:

437
NNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNN
NNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNNNNPNNNNNKNNN...

output:

603440

result:

wrong answer 1st numbers differ - expected: '631708', found: '603440'