Ural Steaks
分类:
greedy
1.题意概述
- n块肉、1个锅,但是这个锅只能同时烤k块,而且每块肉要烤2面,每面要1分钟,问煎完n块的最少时间?
2.解题思路
- 先让所有的肉都先煎一面,然后考虑第二面要让锅的空间尽可能地利用,当
2n%k=0
时,我们可以通过顺序的调整让锅的空间都利用上,否则还需要一次多余的。
- trick点: n=6,k=4,ans=2
3.AC代码
int n, k;
while (~scanf("%d%d", &n, &k)) {
int cnt = n / k, ans;
if (n <= k) ans = 2;
else {
ans = cnt * 2;
if (n != k * cnt) ans = 2 * cnt + ((n - cnt * k) * 2 > k) + 1;
}
printf("%d\n", ans);
}