ドゥームの伝説

ドゥームP1338の伝説

長い時間、見つかっただけで完全な配列の逆の順序を読んで......と、このタイトルは重要ではありません。

それはしないだろう

一般的な考え方:

Nまでの長さが(N-1)* N / 2反転ペアに配置されています。

確かにあまり前面に要素の逆の順序で小さく(貪欲)

とき、M <=(N-2)*(N-1)のタイトル/ 2は、正面上の最小要素とすることができます。

もしM>(N-2)*(N-1)/ 2、最小の要素を戻すことが必要であるように。

#include <ビット/ STDC ++ H>
 使用して 名前空間STDを、
長い  N、M、[ 50005 ]、T、F、P。
INT メイン()
{ 
    scanf関数(" %d個の%のD "、&​​N、&M)。
    T = N、F = 1 以下のためにint型 i = 1 ; iが<= N; iは++ 
    { 
        P =(NI)*(N- 1 -i)/ 2 もし(P> = M)++ F] = I。
        
        { 
            [T - ] = I。
            メートル= M-(T-F + 1 )。
        } 
    } 
    のためのint型 i = 1 ; iが<= N; iが++ 
        のprintf(" %dの" 、[I])。
    リターン 0 ; 
}

おすすめ

転載: www.cnblogs.com/yige2019/p/11300677.html