URAL1820

来源:互联网 发布:软件评测师真题 编辑:程序博客网 时间:2024/06/05 14:50

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);}
原创粉丝点击