BZOJ 2456モード(モードを探してください)(夏ACM1 F)

問題の意味

数をN、数の最大数が表示されます見つけ、N / 2回の出現を確認してください。

100%のデータ、N <= 500000、<= maxlongintの数のそれぞれの列の数。

問題の解決策

アイデアは、通常の高速ロウ、統計的な答えです。

しかし、この質問のみピットは、メモリ1Mにピットに、その配列はさらに開くことができません。

だから、妖精の練習があり、かつn / 2があるので、その後、他の数は、乾燥さまで追加、しかし彼。

だから我々は殴られた、ANS現在の会衆番号は、今回読んでカウントが会衆の数であれば、彼は口の中の薬を食べることができ、その後、私たちは血の一滴を[面白い]苦しむべきではない公共の人生を残りの現在の数の合計を記録します何の血私たちが抵抗する他の戦士を持っていない場合は、[痛い]、最後のステーションに選ばれたワン(モード)です。

しかし、現在のANSは他の人があなたに影響を与え、彼を攻撃し、最終的な答えではないのですか?

もちろん、彼らはお互いを殺す、グループのためのモードに慣れていない、あなたはそれらを得るために以下の血液を使用することができます。

単純に素晴らしいああ、HFUが、これはsxkする可能性があるとして、それは、+ 1 1簡単な質問だった、と言いました

書式#include <cstdioを>
 使用して 名前空間はstdを、
int型 N、ANS、和= 0 、X;
INT メイン()
{ 
    
    scanf関数(" %のD "、&N) 
    以下のためにint型 i = 1 ; iは= N <; ++ I)
    { 
        scanf関数(" %のD "、&x)は、
        もし(!合計){; ++のANS = xの和;}
         そう
        { 
            場合(X == ANS)++ 和。
            他の - 合計。
        } 
    } 
    のprintf(" %のD " 、ANS)。
    リターン 0 ; 
}
コードの表示

ユニバーサルヘッドは、より多くのメモリを占めてあります。

おすすめ

転載: www.cnblogs.com/sto324/p/11222280.html