QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#792172#9625. 魔弹AfterlifeAC ✓687ms26272kbC++207.5kb2024-11-29 03:29:592024-11-29 03:29:59

Judging History

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

  • [2024-11-29 03:29:59]
  • 评测
  • 测评结果:AC
  • 用时:687ms
  • 内存:26272kb
  • [2024-11-29 03:29:59]
  • 提交

answer

#include <bits/stdc++.h>
#include<bits/extc++.h>
using namespace __gnu_pbds;
using namespace std;
int n ;
string s;
int ans[100005] , sol[100005];
const int mod = 998244353;
int t[100005] , rt[100005];
const int G = 3;
int ln[100005] ;
int ft[100005];

const int P=998244353;

using poly=vector<int>;
const int N=5e5+1e3+7;
template<int P>
int qpow(int a,int b)
{
    int ret=1;
    while(b)
    {
        if(b&1)
            ret=1ll*ret*a%P;
        b>>=1;
        a=1ll*a*a%P;
    }
    return ret;
}
namespace Core {
    int a[N],b[N],w[N],rev[N];
    template<int P>
    inline void NTT(int *a,int len)
    {
        for(int i=1;i<len;i++)
            if(i>rev[i])
                swap(a[i],a[rev[i]]);
        for(int d=1;d<len;d<<=1)
            for(int m=d<<1,i=0;i<len;i+=m)
                for(int j=0;j<d;j++)
                {
                    int x=a[i+j],y=1ll*a[i+j+d]*w[len/m*j]%P;
                    a[i+j]=(x+y>=P?x+y-P:x+y);
                    a[i+j+d]=(x-y<0?x-y+P:x-y);
                }
    }
};

template<int P>
poly mul(const poly &va,const poly &vb)
{
    using namespace Core;
    int len=1;
    while(len<(int)va.size()+(int)vb.size()-1)
        len<<=1;
    for(int i=0;i<len;i++)
        a[i]=(i<(int)va.size()?va[i]:0),b[i]=(i<vb.size()?vb[i]:0);
    for(int i=1;i<len;i++)
        rev[i]=rev[i>>1]>>1|(i&1?len>>1:0);
    w[0]=1;
    w[1]=qpow<P>(3,(P-1)/len);
    for(int i=2;i<len;i++)
        w[i]=1ll*w[i-1]*w[1]%P;
    NTT<P>(a,len);
    NTT<P>(b,len);
    for(int i=0;i<len;i++)
        a[i]=1ll*a[i]*b[i]%P;
    reverse(a+1,a+len);
    NTT<P>(a,len);
    poly c((int)va.size()+(int)vb.size()-1);
    for(int i=0,invlen=qpow<P>(len,P-2);i<(int)c.size();i++)
        c[i]=1ll*a[i]*invlen%P;
    return c;
}

const int mod1 = 998244353 , mod2 = 1004535809 , mod3 = 469762049;

typedef __int128 i128 ;
i128 exgcd(i128 a, i128 b, i128 &x, i128 &y) {
    if(!b) {
        x = 1, y = 0;
        return a;
    }
    i128 g = exgcd(b, a % b, y, x);
    y -= a / b * x;
    return g;
}
i128 crt(i128 a,i128 m,i128 b,i128 n) {
    if(n > m) swap(a , b) , swap(m , n) ;
    i128 x,y,g = exgcd(m , n , x , y) ;
    assert((a - b) % g == 0) ;
    x = (b - a) % n * x % n / g * m + a;
    return (x < 0 ? x + m * n / g : x) ;
}
poly rmul(const poly&a ,const poly& b) {
    poly c1 = mul<998244353>(a , b) ;
    poly c2 = mul<1004535809>(a , b) ;
    poly c3 = mul<469762049>(a , b) ;

    poly sol(c1.size()) ;
    for(int i = 0;i < c1.size();i++) {
        i128 a = crt(c1[i] , mod1 , c2[i] , mod2) ;
        i128 b = crt(a , (i128)mod1 * mod2 , c3[i] , mod3) ;
        sol[i] = (b % 998244352) ;
    }
    return sol;
}

int fpow(int a,int b) {
    int ans = 1;
    while(b) {
        if(b & 1) ans = 1LL * ans * a % mod;
        a = 1LL * a * a %mod ; b >>= 1;
    }
    return ans;
}

const int B = 5e6 ;

struct gsm {
    int p[N + 5] , pn[N + 5];
    int inv[N + 5] , invn[ N + 5];
    void init(int x) {
        p[0] = 1;
        for(int i = 1;i <= N;i++) p[i] = 1LL * p[i - 1] * x % mod;
        pn[0] = 1;
        for(int i = 1;i <= N;i++) pn[i] = 1LL * pn[i - 1] * p[N] % mod;

        int r = fpow(x , mod - 2);
        inv[0] = invn[0] = 1;
        for(int i = 1;i <= N;i++) inv[i] = 1LL * inv[i - 1] * r % mod;
        for(int i = 1;i <= N;i++) invn[i] = 1LL * invn[i - 1] * inv[N] % mod;
    }
    int qpow(int x) {
        return 1LL * pn[x / N] * p[x % N] % mod;
    }
    int qinv(int x) {
        return 1LL * invn[x / N] * inv[x % N] % mod;
    }
}g3;

namespace L{
    static int p[] = {2,7,17} ;
    static int k[] = {23,1,1} ;
    vector<int> pr[3];
    const int L = 512;
    int cc[3][L];
    void init() {
        g3.init(3) ;
        for(int i = 0;i < 3;i++) {
            pr[i].resize(k[i] + 1) ;
            pr[i][0] = 1;
            for(int j = 1;j <= k[i];j++) pr[i][j] = pr[i][j - 1] * p[i] ;
            memset(cc[i] , -1 , sizeof(cc[i])) ;

            int c = g3.qpow((mod - 1) / p[i]) , val = 1;
            for(int j = 0;j < p[i];j++) {
                assert(cc[i][val % L] == -1);
                cc[i][val % L] = j;
                val = 1LL * val * c % mod;
            }
        }
    }
    int ln(int b) {
        if(b == 0) return -1;
        // assert(b > 0 && b < mod) ;
        int ans[3];
        for(int i = 0;i < 3;i++) {
            int &x = ans[i];
            x = 0;


            for(int r = 1 ; r <= k[i] ; r++) {
                int d = g3.qinv( (1LL * x * (mod - 1)/pr[i][r]) % (mod - 1) ) , dr = 1LL * fpow(b , (mod - 1) / pr[i][r]) * d % mod; 
                // printf("R %d : %d %d %d\n",r,x,d,dr) ;
                // assert(cc[i].count(dr)) ;
                x += cc[i][dr % L] * pr[i][r - 1] ;
            }
        }

        int sol = (981467137LL * ans[0] + 427819008LL * ans[1] + 587202560LL * ans[2]) % (mod - 1);
        return sol ;
    }
}

void bsgs() {
    L::init() ;
    for(int i = 1;i <= n + 1;i++) ln[i] = L::ln(i) ;
    
    // for(int i = 1;i <= n + 1;i++) printf("%d %d\n",i,ln[i]) ;
    for(int i = 1;i <= n;i++) ft[i] = (ln[i + 1] - ln[i] + mod-1) % (mod - 1) ;

}

int C(int a,int b) {
    return 1LL * t[a] * rt[b] % mod * rt[a-b] % mod;
}
void calc(string s) {
    poly f(n + 1) , g(n + 1) ;
    for(int i = 1;i <= n;i++) {
        ans[i] = 0;
        if(s[i] == 'L') f[i] = 1;
        g[i] = ft[i] ;
    }
    poly c = rmul(f , g) ;
    for(int i = 1;i <= n;i++) {
        ans[i] = c[i] ;
    }
    for(int i = 0;i <= n;i++) f[i] = g[i] = 0;
    for(int i = 1;i <= n;i++) {
        if(i >= 2) g[n - i] = ft[i - 1];
        if(s[i] == 'R') f[i] = 1;
    }
    c = rmul(f , g) ;
    for(int i = 1 ; i <= n;i++) {
        if(s[i] != 'L') {ans[i] = 0;continue ;}
        if(i != n && s[i + 1] == 'L') {ans[i] = 0 ; continue ;}

        ans[i] = (ans[i] + c[i + n]) % (mod - 1) ;
        ans[i] = fpow(G , ans[i]) ;

        ans[i] = 1LL * ans[i] * t[i - 1] % mod;
        if(i != n) ans[i] = 1LL * ans[i] * t[n - i - 1] % mod;
        ans[i] = 1LL * ans[i] * C(n , i) % mod;
        // printf("I %d %d\n",i,ans[i]) ;
    }
    // for(int i = 1;i <= n;i++) {
    //     ans[i] = 0;
    //     if(s[i] == 'R') continue ;
    //     if(i != n && s[i + 1] == 'L') continue ;
    //     int sr = 1 , sl = 1;
    //     for(int j = i + 1 ;j <= n;j++) {
    //         if(s[j] == 'R') sr = 1LL * sr * (1 + fpow(j - i - 1 , mod - 2)) % mod;
    //     }
    //     for(int j = i - 1;j >= 1;j--) {
    //         if(s[j] == 'L') sl = 1LL * sl * (1 + fpow(i - j , mod - 2)) % mod;
    //     }
    //     sr = 1LL * sr * t[n-i] % mod * fpow(n - i , mod - 2) % mod;
    //     if(i == n) sr = 1;
    //     sl = 1LL * sl * t[i] % mod * fpow(i , mod - 2) % mod;
    //     ans[i] = 1LL * sl * sr % mod * C(n , i) % mod;
    // }
}
mt19937 rnd(0) ;
int main() {
    ios::sync_with_stdio(false) ; cin.tie(0) ;
    cin >> n >> s;
    // n = 1e5 ;
    // for(int i = 1;i <= n;i++) {
    //     if(rnd()%2) s += 'L' ;
    //     else s += 'R' ;
    // }
    t[0] = rt[0] = 1;
    for(int i = 1 ; i <= n;i++) t[i] = 1LL * t[i - 1] * i % mod , rt[i] = fpow(t[i] , mod - 2) ;
    bsgs() ;
    

    s = "#" + s;
    calc(s) ;
    for(int i = 1;i <= n;i++) sol[i] = ans[i] ;
    
    for(int i = 1;i <= n - i + 1;i++) swap(s[i] , s[n - i + 1]) ;
    for(int i = 1;i <= n;i++) s[i] ^= ('L' ^ 'R') ;
    calc(s) ;
    for(int i = 1; i<= n;i++) sol[n - i + 1] = (sol[n - i + 1]+ans[i]) % mod;
    for(int i = 1;i <= n;i++) cout << sol[i] <<' ' ;
    cout << '\n';
}

詳細信息

Test #1:

score: 100
Accepted
time: 7ms
memory: 19796kb

input:

2
RL

output:

1 1 

result:

ok single line: '1 1 '

Test #2:

score: 0
Accepted
time: 7ms
memory: 21168kb

input:

4
LLRR

output:

0 24 24 0 

result:

ok single line: '0 24 24 0 '

Test #3:

score: 0
Accepted
time: 7ms
memory: 20684kb

input:

4
RLRL

output:

9 6 6 9 

result:

ok single line: '9 6 6 9 '

Test #4:

score: 0
Accepted
time: 11ms
memory: 21456kb

input:

10
LRLRLLRRRR

output:

1088640 1088640 604800 604800 0 1935360 1935360 0 0 0 

result:

ok single line: '1088640 1088640 604800 604800 0 1935360 1935360 0 0 0 '

Test #5:

score: 0
Accepted
time: 3ms
memory: 20952kb

input:

10
LLRLLRLRLL

output:

0 725760 725760 0 725760 725760 483840 483840 0 1693440 

result:

ok single line: '0 725760 725760 0 725760 725760 483840 483840 0 1693440 '

Test #6:

score: 0
Accepted
time: 17ms
memory: 21128kb

input:

998
RLRLRLRLRLRLRLRLRLRLRLRLRLRLRRLLRRRLRLLRLLRLRLRLLLRLRRLRLRLRLRLRLRLRLRLRLRLRLRLRRLRLLRLRLRLRLRLRLRLRRLRLLRLRLRLRLRLRLRRLRRLRRRLLRLLRLRLLRRLRLLLRLRLRRLRRLRLRLRRLRLRLLRLRLRLRLRLRLRLLRLRLRLRLRLLLRRLLRLRRLRRLRRLRLRLRLRLRLRLRLRLRLRLRLRLLRRLRRRLRRLRLRRLRLRLRLRLRLRLRLLRLLRRLRRLRLLRLRLRLRRLLRLRLRLLRRLRL...

output:

791892921 222105954 222105954 387243673 387243673 858332170 858332170 668690160 668690160 29037702 29037702 344898397 344898397 10138435 10138435 920091431 920091431 680236417 680236417 884390492 884390492 338820980 338820980 508576275 508576275 957551010 957551010 2459479 2459479 0 0 61773050 61773...

result:

ok single line: '791892921 222105954 222105954 ... 632970969 632970969 464724562 '

Test #7:

score: 0
Accepted
time: 17ms
memory: 20736kb

input:

998
RLRLRLRLRLRLRLRLRLRRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRRLRLRLRLRLRLRLRLRLRLRLRLRLRRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRRLRLRLRLRLRLRLRLRRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLR...

output:

439674742 509947875 509947875 815063904 815063904 891776804 891776804 553641803 553641803 13450200 13450200 267859496 267859496 385670319 385670319 882911667 882911667 109331874 109331874 0 128425033 128425033 836729978 836729978 854828800 854828800 123260213 123260213 415537062 415537062 26751346 2...

result:

ok single line: '439674742 509947875 509947875 ... 773862752 498604661 498604661 '

Test #8:

score: 0
Accepted
time: 12ms
memory: 20736kb

input:

1000
LRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRL...

output:

255385 255385 948987885 948987885 944375949 944375949 391954880 391954880 918617102 918617102 509797789 509797789 963771001 963771001 168738152 168738152 967324970 967324970 550867915 550867915 149529568 149529568 490172856 490172856 731868859 731868859 286624466 286624466 277467460 277467460 496196...

result:

ok single line: '255385 255385 948987885 948987... 705333897 705333897 531622062 '

Test #9:

score: 0
Accepted
time: 4ms
memory: 21160kb

input:

998
LRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLR...

output:

54273261 54273261 171633438 171633438 946148426 946148426 982991957 982991957 138042735 138042735 703892213 703892213 165685072 165685072 890250227 890250227 244374543 244374543 640936104 640936104 169345002 169345002 847600184 847600184 889380235 889380235 648465375 648465375 412924715 412924715 37...

result:

ok single line: '54273261 54273261 171633438 17...38 171633438 54273261 54273261 '

Test #10:

score: 0
Accepted
time: 10ms
memory: 21092kb

input:

999
RLRRLRRRLLLLLLLRRRRLRLLRLRRLLLLRRLLRRRRLRRLRLLRRRLLLLLLRLLRRLRRLLRRRRLLLLRRRLRLRRLLLRRLLLRLLLRRLRRLRRRLLRLRRLRRLLLRLRLLRLRRLLRRRRRLRRRLRRLRLLRLLLLLLLRLLRLLLRRRRLRRLRLLLRRRLRLLRRLRLLRLRLRLLLRRLLLLRLRRRLLLLLLRRLLRLLLRRLRRRRRLLLRLRRLRLLLLRLLLRLLLRRRRLRLRRLRLLLLRLRLRLRLRLLRLLLLLLRRRLLLLLRRLLLLRLLLLR...

output:

831921527 841981814 841981814 0 802033891 802033891 0 0 0 0 0 0 0 0 313870399 313870399 0 0 0 845084145 845084145 0 202490903 202490903 292802290 292802290 0 0 0 0 246685715 246685715 0 0 750008183 750008183 0 0 0 627041700 627041700 0 129985167 129985167 0 414419357 414419357 0 0 0 0 0 0 0 69839104...

result:

ok single line: '831921527 841981814 841981814 ...451543 0 0 73252857 73252857 0 '

Test #11:

score: 0
Accepted
time: 15ms
memory: 21032kb

input:

1000
RRLRRLRLRLLRRRLRLRLRLLLRLLLRLRLLRLRRRLRRRRLLRLLLLRLLRLLRLRLRLLLLRRRRRLRLLLRLLRLRRLRLLLRRLLLLLRLRRRRLRRRLLLLRRLRLLLLLRRRRLLRLRLRLLRRRRRLLRRLRLRLLLLRRRRRLRRLLRRRLRRRRLRLLRRLLRRRLLLLRLLLLRRRRLRLLLLLRRRRLLLRLLRLRLRLRLRLRLRRLLLLRRRLRLLLRLLRRLRRRLLLLLLLLLLLRLLLLLLLRLLLRLRRLRLLLRLLRLLLLRLRLRLRLLRLRLLR...

output:

511795335 0 69779310 69779310 0 739828205 739828205 753376067 753376067 0 701671563 701671563 0 0 212012731 212012731 878780187 878780187 579239850 579239850 0 0 522816863 522816863 0 0 334242623 334242623 863711626 863711626 0 643092447 643092447 851181131 851181131 0 0 561587102 561587102 0 0 0 0 ...

result:

ok single line: '511795335 0 69779310 69779310 ... 186342784 186342784 663982717 '

Test #12:

score: 0
Accepted
time: 679ms
memory: 26108kb

input:

100000
LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL...

output:

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...

result:

ok single line: '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 0 215582594 '

Test #13:

score: 0
Accepted
time: 668ms
memory: 26040kb

input:

100000
RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR...

output:

215582594 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...

result:

ok single line: '215582594 0 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 '

Test #14:

score: 0
Accepted
time: 685ms
memory: 26124kb

input:

100000
RLRRLRLRRRLLLLRRLRRLRLRRLLRRRRRLLRLLRLRRLRLLRRRLLRRRRLRLLRRLRLLRRLRRLLLRRLLLLLRLRRLRLLLRRRLRRRLRRLRRRRRLLRRLLLRLRLLLRRLLRLLLRLLRLRRLRLRRRLLLRRLRRRRRRLLLLLLLLLLLRLLRRRLLRRLRRLLRLRLLLRRRLLRRLLLRLLLRRRRLLRLLRLRRRLLLLLRRRRRLLRRRLRLRLRRRLRRRRRLRLRLRLLRRLRRLRRLLRRRLRRRLRLRRRRLRRLLRLLLLLRRRLLLRLRRRL...

output:

655182588 424061777 424061777 0 532898281 532898281 250301765 250301765 0 0 0 0 0 258617217 258617217 0 36972119 36972119 0 990202488 990202488 808928429 808928429 0 0 24205425 24205425 0 0 0 0 0 421610174 421610174 0 84739313 84739313 311210211 311210211 0 731382457 731382457 0 140895153 140895153 ...

result:

ok single line: '655182588 424061777 424061777 ...83051157 883051157 0 981459997 '

Test #15:

score: 0
Accepted
time: 667ms
memory: 26272kb

input:

100000
LLRRRLRLLRLLRLRLLLRLRLLRRLRRRLRLRRRRLLLLLRLRRLRLLRLRLRRLRRLLLLRRRRRLRLRLRRRRLLLLLRLLRLLRRRRRLLRRLRRRRRRRLRLRRRLLRLRRLRRRRRRLLRRLRLRLRLLRLRRLLLRLLLRRRRLLLLLRLRLLRRLLRLLRLLLLRLRLRRRLLRRLLLLLLLLRLLLLLRLLLRLRRRLRRRRRRLRRRLRRLRLRLLRLLRLLRRLRRLLRRRLRLRLRRLRRRLLRRLRLRRLRLRLRLRLRRLRLRRLRRRLLRLRLLRLLR...

output:

0 622368831 622368831 0 0 312222703 312222703 0 644221684 644221684 0 174202506 174202506 871543980 871543980 0 0 935237676 935237676 854058755 854058755 0 524939144 524939144 0 835495707 835495707 0 0 811694651 811694651 8567849 8567849 0 0 0 0 0 0 0 778008990 778008990 273531778 273531778 0 663941...

result:

ok single line: '0 622368831 622368831 0 0 3122...874130 472874130 0 0 915577668 '

Test #16:

score: 0
Accepted
time: 664ms
memory: 25928kb

input:

99999
RLLRLRLLRRLRLLRRLRLRLRRRLRLRRLLRLRLLRLRLRLRLRLLRRLLLRLRLRLLLRRLRLRLRLRLRLRRLRLRLRRLRLRLRLRLLLRRLRLRLRLRLRLRLRLRLRLLRLRRLRLRLRLRLLRLLRLRLRLRRRRLRLRLRLRLRLLLRRLRLRLRLRRLRLRLLRLRLRRLRLLRLRLRLRLRLRRLRLRRLRLLRLRLRLRLLRLRLRLRRLRLRLRLRLRLRLRRLRLRLRLRLRLLLLRLRRLRLRLRLRLLRRLRLRLRLRLRLRLRLRLRLLRLRLRLRLR...

output:

857597950 0 938643316 938643316 546642845 546642845 0 9325804 9325804 0 253386790 253386790 0 284892971 284892971 0 406121179 406121179 126656527 126656527 120800890 120800890 0 0 845318793 845318793 921533342 921533342 0 0 2601538 2601538 197822400 197822400 0 396731107 396731107 562366338 56236633...

result:

ok single line: '857597950 0 938643316 93864331... 942066999 942066999 623799230 '

Test #17:

score: 0
Accepted
time: 671ms
memory: 26160kb

input:

99998
LRLRLRLRLRLRLRLRLRLRLLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRRRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLLRLRLRLRLRLRLRLRLRLRLRLRLRL...

output:

227224847 227224847 688276241 688276241 272269422 272269422 840415038 840415038 709217006 709217006 968282991 968282991 737355553 737355553 593823485 593823485 660168773 660168773 9561283 9561283 0 296353266 296353266 11637670 11637670 944463953 944463953 30674812 30674812 119782681 119782681 392995...

result:

ok single line: '227224847 227224847 688276241 ...43872896 521994131 521994131 0 '

Test #18:

score: 0
Accepted
time: 687ms
memory: 25992kb

input:

99999
LRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLR...

output:

657380282 657380282 506001932 506001932 476316674 476316674 769232758 769232758 794446371 794446371 469914731 469914731 877622223 877622223 311033786 311033786 280018681 280018681 466641023 466641023 492736654 492736654 229669458 229669458 589920046 589920046 155576401 155576401 612972851 612972851 ...

result:

ok single line: '657380282 657380282 506001932 ... 137963976 137963976 871464933 '

Test #19:

score: 0
Accepted
time: 677ms
memory: 26088kb

input:

99999
LRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLR...

output:

735518182 735518182 261975641 261975641 309450675 309450675 300206665 300206665 354220722 354220722 112132541 112132541 735542082 735542082 599471705 599471705 666404521 666404521 43471739 43471739 721884769 721884769 776311760 776311760 966903300 966903300 156484024 156484024 673316931 673316931 44...

result:

ok single line: '735518182 735518182 261975641 ... 261975641 261975641 735518182 '