兰州烧饼

来源:互联网 发布:网络成瘾症心理干预 编辑:程序博客网 时间:2024/05/16 01:24

兰州烧饼
时间限制:1000 ms | 内存限制:65535 KB
难度:1
描述
烧饼有两面,要做好一个兰州烧饼,要两面都弄热。当然,一次只能弄一个的话,效率就太低了。有这么一个大平底锅,一次可以同时放入k个兰州烧饼,一分钟能做好一面。而现在有n个兰州烧饼,至少需要多少分钟才能全部做好呢?
输入
依次输入n和k,中间以空格分隔,其中1 <= k,n <= 100000
输出
输出全部做好至少需要的分钟数
样例输入
3 2
样例输出
3
提示
如样例,三个兰州烧饼编号a,b,c,首先a和b,然后a和c,最后b和c,3分钟完成

题解
当n<=k时,每次都可以把所有烧饼的其中一面弄热,所以只需要2次就够;
当n>k时,当n=k时,sum=2;
当n=2*k时,sum=4;
当n=3*k时,sum=6;
。。。。。。
可知,只要n是k的倍数,那么sum=2*n/k,n再大(处于倍数之间),sum必加1;

#include<cstdio>int main(){    int n,k;    int sum;    while(~scanf("%d%d",&n,&k)){        if(n<=k){            printf("2\n");        }else{            sum=n*2/k;            if(n*2%k!=0) sum++;            printf("%d\n",sum);        }    }    return 0; }
原创粉丝点击