SRM150 DIV2 250
問題文概略
一日に与えられる仕事とこなせる仕事の量が決まっている。
仕事を終えられる日数を求めよ。
書いたコード
解けなかった。
他の参加者のコードを読んで修正した
public class WidgetRepairs {
public int days(int[] arrivals, int numPerDay) {
int n = arrivals.length;
int w = 0, ans = 0;
for (int i = 0; i < n; i++){
w += arrivals[i];
if(w > 0) {
ans++;
w -= Math.min(w, numPerDay);
}
}
if(w > 0) {
ans += (int) Math.ceil( ((double) w/ numPerDay));
}
return ans;
}
}
雑感
仕事の量も配列にいれて管理しようとコードを書いていたら混乱して解けなかった。
単純に一つ変数を用意して、管理すればよかったのか。
仕事量を計算する時の以下の考えかたは覚えておこう。
w -= Math.min(w, numPerDay);
Author And Source
この問題について(SRM150 DIV2 250), 我々は、より多くの情報をここで見つけました https://qiita.com/ikemonn/items/2f99eca3d1cf25818c0a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .