ベリージャムcodeforcesの1278C

効果の件名:

、あなたが左に食べることができるが食べるために途中からジャム、はしご、の2種類があり、あなたも待ちにジャムほしいですの2種類の最終を作るために右の数を食べることができます

ソリューション:

ことを考えていますが、仕上がりを考慮していませんでした。

ラダーの左側に、我々は1からN 2へラダージャム格納された番号iの右側にある2つの配列で1から番号1とiが数1〜2にジャムI Iを記録し、そして番号。

次にどちらの場合も、

最初の最も右側に最終的な答えは、残りのジャムですされています。私達はちょうど同じ右側1-2 2-1の左側を聞かせする必要があります。

第二の場合は、最終的な答え、すなわち左または右食べ食べ、一方の側に生じます。

#include <ビット/ STDC ++ H>
 使用して 名前空間STDを、
typedefの長い 長いLL。
CONST N = 1E6 + LL 7 CONST LL INF = 1E9 + 7 
[N]をARRちゃいます。
[N] BRR LL。
LL marka1 [N]。
LL marka2 [N]。
LL markb1 [N]。
LL markb2 [N]。
マップ <-1,11,11-> 融点;
ボイド解く(){ 
    mp.clear()。
    LLのn; 
    cinを >> N;
    以下のための(iは= LL 1、I <= N; I ++)CIN >> ARRを[I]。
    以下のための(iは= LL 1、I <= N; I ++)CIN >>BRR [i]は、
    以下のために(LL iは= 1 ; iが<= N; I ++ ){
         場合(ARR [I] == 1 ){ 
            marka1 [I] = marka1 [I- 1 ] + 1 
            marka2 [I] = marka2 [I- 1 ]。
        } 
        { 
            marka1 [I] = marka1 [I- 1 ]。
            marka2 [I] = marka2 [I- 1 ] + 1 
        } 
    } 
    markb1 [N + 1 ] = 0 ; 
    markb2 [N + 1 ] =0 ;
    以下のための(iはN = LL; I> = 1 ; i-- ){
         場合(BRR [I] == 1 ){ 
            markb1 [I] = markb1 [I + 1 ] + 1 
            markb2 [I] = markb2 [I + 1 ]。
        } 
        { 
            markb1 [I] = markb1 [I + 1 ]。
            markb2 [I] = markb2 [I + 1 ] + 1 
        } 
    } 
    のための(; I> = iがN =ちゃう1 ; i-- ){ 
        LL K - = marka1 [I]marka2 [i]は、
        もし(MP [K] == 0 ){ 
            MP [K] = I。
        } 
    } 
    LL ANS = INF。
    以下のための(iは= LL 1、I <= N; iは++ ){ 
        kはちゃう = markb2 [I] - markb1を[I]。
        もし(MP [K] =!0 ){ 
            ANS =分(ANS、N-MP [K] + I- 1 ); 
        } 
    } 
    LL ANS2 = 0 以下のためにINT iが= 1 ; I <= N; I ++ ){
         場合(marka1 [I] == marka2 [i])とANS2 = I。
    } 
    ANS2 = N-ANS2 + N。
    LL ANS3 = N + 1 INT ; I> = I = N 1 ; i-- ){
         場合(markb1 [I] == markb2 [i])とANS3 = iは、
    } 
    ANS3 = N + ans3- 1 
    COUT <<分(ANS3、分(ANS、ANS2))<< ENDL。
} 
int型のmain(){ 
    IOS :: sync_with_stdio(0 )。
    LL T; 
    cinを >> トン。
    一方、(t-- ))(解きます。
    リターン 0 ; 
}

おすすめ

転載: www.cnblogs.com/Accepting/p/12076713.html