スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

練習 TopCoder SRM 499 Div2

TopCoder SRM 499 Div2


import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
/*
* {2,2} 2+1匹のグループが少なくとも1つある。
* {2,2,2} 2+1匹のグループが少なくとも1つある。
* {2,2,2,2} 2+1匹のグループが少なくとも2つある。
* {2,2,2,2,2} 2+1匹のグループが少なくとも2つある。
*/

public class ColorfulRabbits {
public int getMinimum(int[] replies){
Map map = new HashMap();//ans, num of ans
int best = 0;
//check replies
for(int i=0;i //new answer
if(map.get(replies[i]) == null) map.put(replies[i], 1);
//same answer
else map.put(replies[i], map.get(replies[i])+1);
}

for(Iterator ite = map.entrySet().iterator();ite.hasNext();){
Map.Entry entry = (Map.Entry)ite.next();
int ans = entry.getKey().intValue();
int numOfAns = entry.getValue().intValue();
//ans+1 匹のグループがいくつあるか?
int numOfGrps =
(numOfAns)%(ans+1)==0? (numOfAns)/(ans+1) :(((numOfAns)/(ans+1))+1);
//the minimum possible number of rabbits
best += (ans+1) * numOfGrps;
}

return best;
}
}


スポンサーサイト
プロフィール

tjnet777

Author:tjnet777
Solaris, VPNのサポート業務を1年

金融系SIerで業務アプリの開発、メンテを3年半

離職して大学院大学 1年生

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。