予備フラグ#09#のSTL

質問の例&

どこにあるの5-1大理石で

書式#include <cstdioを> 
する#include <アルゴリズム> 使用して名前空間はstdを、const int型 MAXN = 10000 ; INT のmain()
{ int型 N、Q、X、[MAXN]、カセ= 0 一方、(scanf関数(" %D%D "、&​​N、&Q)== 2 && N){ 
        のprintf(" CASE#1%のD:\ n "、++ 加瀬)。以下のためにINT iが= 0 ; i = N;!++ I){ 
            scanf関数(" %d個"、&

 

 


    
    
    
        
        
        A [I]);
             //は、大理石のn個の数字読み取り
        } 
        
        ソート(A、A + N)を; // ソート
        
        しながら(Q - ){
             //は見つける 
            scanfの(" %のD "、およびX)。
             INT P = LOWER_BOUND(N-+、X) - ; // ソートされた配列に見たX 
            IF([P] == X){ 
                のprintf(" %のDの%D ATが\ N-見出さ"、 X、P + 1 ); 
            } そうでは{ 
                printf関数は、(" %Dず\ N-を発見しました"、 バツ);    
            } 
        } 
    } 
    
    戻り 0 
}

 

「乱数、配列ポインタ」の一例。

#include <cstdioを> 
する#include <アルゴリズム> 

の#include <cstdlib> 
の#include <ctimeの> 

使用して 名前空間をSTD。

const  int型 MAXN = 10000 ; 

int型[MAXN]。

ボイドプリントアレイ()
{ 
    INT iは= 0、I =!10 ; ++ I){ 
        のprintf(" %dの" 、[I])。
    } 
    のprintf(" \ n " ); 
} 

int型のmain()
{     
    にsrand((INT)時間(0)); // 乱数シード

    のためにINT I = 0!= I; 10 ; ++ I)は{ 
        A [I] = RAND()%100 ; // 0100との間に生成された)の乱数
    } 
    
    プリントアレイ(); 
    // => 68 94 34 28 88 82 28 16 91である2 
    
    ソート( + 10); // ソート索引の0へ、10)元素
    
    プリントアレイ(); 
    / / => 16 28 28 2 68 82 88 91 94 34である
        
    のprintf(" %D%D \ N- "、A、A&[ 0 ]); //=> 4415552 4415552 
    のprintf(" %dの\ n "、LOWER_BOUND(+ 10、[ 2 ]))。// => 4415560 
    のprintf(" %dの\ n "、&​​[ 2 ])。// => 4415560 
    のprintf(" %D \ n "、&​​[ 2 ] - )。// => 2 
    のためのINT iは= 0、I =!3 ; ++ I){ 
        のprintf(" %dの"、および[I])。
    } //=> 4415552 4415556 4415560 
    のprintf(" \ n " ); 
    printf(" %D%D "、*(+ 2)、[ 2 ])。// 28 28 
    
    リターン 0 ; 
}

 

参照

[1]  C ++は、乱数を生成-ラッキー& -ブログパーク

おすすめ

転載: www.cnblogs.com/xkxf/p/12644110.html