毎日水やり
します。http://codeforces.com/problemset/problem/149/Aオリジナルタイトルリンク
[タイトル説明
2018年12月31夜、ときコングコングが両親花はバルコニーに水を注ぎ終えた後、準備ができてカップルはオーロラを見に南極に行き、その後、2020年1月1日の朝に家に帰ります。
花に水を:彼らは自宅コングコング1つ、コングコングと使命を手配するために残っています!
それは毎朝、昼、夜、それぞれ注ぐ水は、その後、最後に花の社長がセンチの高さaiをするとき過ごすことを主張する場合コングコング、i番目の月に、知っている。
もし、i番目の月、コングコング私たちは、花のハイエンドが社長でない場合には、(その日の朝に寝坊など)、その後、この主張はありません。
親が戻ってきたときに、k個のセンチ未満の長い高身長を過ごす場合コングコングが知っている、その両親は、彼が花に水を取らなかったことがわかります。
コングコングが花を注ぐ、少なくとも数ヶ月が必要になります、花成長している高さは、1cmをkに等しいよりも大きくすることができる作る(それは言うことです:ママとパパは発見が背の高いk個以上のCMを取った後に戻ってきました)。
[入力形式
入力の最初の行のは、整数k(0 <= K <=含ま 100)。
第二ライン12 iが(1 <= AI <= aiは整数表現するために使用された最初のうち2つの正の数値との間の空間と、整数入力を含む 100)。
[]出力形式の
出力はCongcongは散水の最小値を必要とする月の数を示す整数を含んでいます。
あなたは花は、少なくともk個のCM、出力-1で成長方法の問題コングコングをさせることができない場合。
サンプル入力[1]
。5
1 1 1 1 2 2 2 1 1 1 2 3
[1]は出力サンプル
2
[2]サンプル入力
0
000000011230
[サンプル2]を出力
0
[3]サンプル入力
11
。1. 1. 1. 1. 5. 1. 1. 4. 4. 1. 1. 1
[3]出力サンプル
3
タイトルの分析
この問題のアルゴリズムを含む:貪欲。
我々はちょうど、最初は0に等しいTOT変数TOTを設定する必要があり
、値の配列が連続TOT、公知TOT> = kに加え、アレイのその後降順。
K == 0は、その後、必要Congcongは散水がない場合は直接0を出力し、
トラバースTOTの端部またはkよりも小さい場合には、出力-1。
次のようにコードは次のとおりです。
#include <ビット/ STDC ++ H> 名前空間STDを使用して、 整数kを、TOT、[12]。 インラインブールCMP(INT A、INT B){> Bを返します。} int型のmain(){ CIN >> K。 (I 0 = int型、iが12 <; I ++の)ためCINを>> [I]。 ソート(+ 12、CMP)。 もし(K == 0){ COUT << 0 << ENDL。 0を返します。 } ため(INT i = 0; iは<12; I ++){ TOT + = [I]。 IF(TOTは> = K){ COUT << I + 1 << ENDL。 0を返します。 } } COUT << -1 << ENDL。 0を返します。 }