【NYOJ】[v1-799]兰州烧饼

文章字数:510

问题描述

兰州烧饼
时间限制:1000 ms内存限制:64 MB

描述

烧饼有两面,要做好有这么一个大平底锅 次可以同时放入k个兰州烧饼,一分钟能做好一面。而现在有n个兰州烧饼,至少需要多少分钟才能全部做好呢?

输入

依次输入n和k,中间以空格分隔,其中1<=k,n<=100000

输出

输出全部做好至少需要的分钟数

样例输入

1
3 2

样例输出

1
3

提示

如样例,三个兰州烧饼编号a,b,C,首先a和b,然后a和c,最后b和c,3分钟完成

问题分析

用这个智商题作为第200的节点吧~

原先在郑轻做过一个固定只放2个的
这个是k变量

不过至少也是有个找规律的思路了

—–k=1时—–
无论怎么样用时都是n*2
—–k=2时—–
n==1时为2 否则为n
n<3时为2
n=4/5时为 3
n=6时为 4
……
—–……—–

然后发现最后的结果和
n*2/k有关

也就是不小于n*2/k的值

而当n<k时
总是需要2分钟

所以代码为

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
#include<stdio.h>
#include<math.h>
int main() {
	int n,k;
	while(scanf("%d %d",&n,&k)!=EOF) {
		if(n<=k)
			printf("2\n");
		else
			printf("%.lf\n",ceil(n*2.0/k));
	}
	return 0;
}

题目地址:【NYOJ】[799]兰州烧饼

该内容采用 CC BY-NC-SA 4.0 许可协议。

如果对您有帮助或存在意见建议,欢迎在下方评论交流。

加载中...