【2017】

D1T2の  時間複雑度(アナログ)

難易度は/特定のテストデータをラフ紙にそれぞれのケースを考慮しなければならない患者を保持&3.複数のグループを作成して処理するコードカードを再生するための1. 2.テストです

#include <ビット/ STDC ++ H>
 に#define RI INTレジスタ
 の#define LL長い長
 の#defineため(I、L、R)のための(RI I = L、I <= R; I ++)
 の#define Dfor(I、R 、L)は(RI I = R; I> = L; i--)
 使用して 名前空間STDを、
文字列A、B;
int型銭、COM、CIR、使用[ 27 ]、G [ 27 ]、プレックス、行く、広告[ 100 ]、MAXX、N、O;
インライン{read()はちゃいます
    LL F = 1、和= 0 チャー CH = GETCHAR()。
    一方、(isdigit(CH)!){ 場合(CH == ' - ')、F = - 1 ; CH = GETCHAR();}
     ながら(isdigit(CH)){合計=(合計<< 1)+(合計< < 3)+(CH ^ 48)、CH = GETCHAR();}
     戻り * F 和。
}
INT メイン(){
    O = )(読み取ります。
    一方(O> 0 ){ = comの= CIR =プレックス=行く= MAXX = N = 0 ; O - ;
        memsetの(使用、0はsizeof(使用))、memsetの(広告、0はsizeof (AD))。
        一方、(B [ 0 ]!= ' O ' ){= B; cinを>> B;
        }
        以下のためにINT iが= 0 ; I <a.length(); I ++)SEN =銭* 10 + [I] - ' 0 ' 以下のためにINT iが= 4 ; I <てb.length() - 1 ; I ++)COM = COM * 10 + B [I] - ' 0 ' 一方、(SEN> 0 ){
            SEN - ; cinを>> ;
            もし([ 0 ] == ' F ' ){
                CIR ++; cinを>> ;
                もし(使用[ 0 ] - 96 ])CIR = - 1 他の使用[ 0 ] - 96 ] = 1、G [CIR] = [ 0 ] - 96 
                CIN >> B;
                もし([ 0!] = ' N ' && B [ 0 ] == ' N ' && ==行く0)プレックス++、広告[CIR] = 1 ;
                そう であれば(((a.length()==てb.length()&&> B)||(a.length()>てb.length())||([ 0 ] == ' N ' [B && 0!] = ' N '))&& ==行く0 =行く)1、N = CIR;
            }
            他の{
                MAXX = MAX(MAXX、プレックス);使用[G [CIR] = 0 ;
                もし(AD [CIR] == 1)プレックス- 、AD [CIR] = 0 ;
                CIR - ;
                もし(N> 0 && CIR <n)を行く= N = 0 ;
            }
            もし(CIR == - 1)のprintf(" ERR \ n ")、SEN = - 1 
        }
        もし(CIR> 0)のprintf(" ERR \ N " );
        もし(CIR == 0 && MAXX == COM)のprintf(" はい\ N " );
        もし(CIR == 0 && MAXX = comの!)のprintf(" ノー\ N " );    
    }
    リターン 0 ;
}
コードの表示

 

 

 

おすすめ

転載: www.cnblogs.com/jian-song/p/11853505.html