首页 > 代码库 > 兰州烧饼
兰州烧饼
兰州烧饼
时间限制: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时,都是需要两分钟。
其他的只需要公式(n*2)/k即可
用三目运算符可
程序代码;
#include<stdio.h> int main() { int n,k; while(scanf("%d%d",&n,&k)!=EOF) { if(n<=k) printf("2\n"); else { if(((n*2)%k)==0) printf("%d\n",(n*2)/k); else printf("%d\n",(n*2)/k+1); } } return 0; }
另外,看了最优代码后学到可用一个语句:printf("%d\n",((n*2)/k==0) ? (n*2)/k :(n*2)/k+1);来代替if(((n*2)%k)==0)
printf("%d\n",(n*2)/k);else
printf("%d\n",(n*2)/k+1);
兰州烧饼
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。