以下の内容はhttps://blog.hamayanhamayan.com/entry/2019/04/07/104037より取得しました。


Five Transportations [ AtCoder Beginner Contest 123 C]

https://atcoder.jp/contests/abc123/tasks/abc123_c

解説

https://atcoder.jp/contests/abc123/submissions/4870666

数学の問題。
A~Eの中の最小の区間ボトルネックであることが言える。
この最小をmiをすると、その部分がボトルネックとなって、毎回mi人ずつ都市6に到着することになる。
つまり、N人をmi人グループに分けて送ることになる。
グループ数はN/miの切り上げだが、これは(N+mi-1)/miという切り上げ特有のテクがあるので、
これで計算する。
 
A/Bの切り上げ ⇔ (A+B-1)/B
 
最初のグループは5秒で到着する。
次のグループはその1秒後に到着する。
その次のグループはその1秒後に到着する。
つまり、「5+(グループ数-1)=4+グループ数」が答えとなる。

ll N, A[5];
//---------------------------------------------------------------------------------------------------
void _main() {
	cin >> N;
	rep(i, 0, 5) cin >> A[i];
	
	ll mi = infl;
	rep(i, 0, 5) chmin(mi, A[i]);
 
	ll ans = 4 + (N + mi - 1) / mi;
	cout << ans << endl;
}



以上の内容はhttps://blog.hamayanhamayan.com/entry/2019/04/07/104037より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14