問題の意味
https://vjudge.net/problem/CodeForces-1007A
配列の並べ替え、その結果、元の大きな数に対応する数よりも最大数の新しい位置。
思考
このよう122333345として栗については、その後、彼はより多くの彼の最小をカバーするために使用されるよりも、確かに大きな数、この後ろにカバーされるより多くのチャンスを持っています。このようなではなく、カバー5と同様にカバー2と1、次いで4が覆われていないからです。カバー2、カバー3 2で、同じ、など213533432として、スクランブル、実際には全く異なるシーケンスを命じていない、我々は直接シーケンスを取り、ダブルポインタを検討トラバーサルができます。
コード
#include <ビット/ STDC ++ H> 名前空間STDを使用して、 #define INF 0x3f3f3f3f の#define LL長い長 のconst int型N = 200005。 const int型MOD = 1E9 + 7。 constのダブルEPS = 1E-8; constのダブルPI = ACOS(-1.0); #define lowbit(X)(X&( - X)) INT A [N]。 int型のmain() { のstd ::イオス:: sync_with_stdio(偽); int型のn; cinを>> N; 以下のために(INT I 1 =; I <= N; I ++) CIN >> [I]。 ソート(+ 1、+ 1 + N)。 int型iは1 =、J = 1; 用(; I <= N; I ++) { IF([I]> [J]) { J ++。 } } COUT << J-1 << ENDL。 0を返します。 }