CodeForces 677B Vanya and Food Processor(打土豆,模拟)
来源:互联网 发布:java项目获取src路径 编辑:程序博客网 时间:2024/05/10 03:04
http://codeforces.com/problemset/problem/677/B
Vanya smashes potato in a vertical food processor. At each moment of time the height of the potato in the processor doesn't exceed hand the processor smashes k centimeters of potato each second. If there are less than k centimeters remaining, than during this second processor smashes all the remaining potato.
Vanya has n pieces of potato, the height of the i-th piece is equal to ai. He puts them in the food processor one by one starting from the piece number 1 and finishing with piece number n. Formally, each second the following happens:
- If there is at least one piece of potato remaining, Vanya puts them in the processor one by one, until there is not enough space for the next piece.
- Processor smashes k centimeters of potato (or just everything that is inside).
Provided the information about the parameter of the food processor and the size of each potato in a row, compute how long will it take for all the potato to become smashed.
The first line of the input contains integers n, h and k (1 ≤ n ≤ 100 000, 1 ≤ k ≤ h ≤ 109) — the number of pieces of potato, the height of the food processor and the amount of potato being smashed each second, respectively.
The second line contains n integers ai (1 ≤ ai ≤ h) — the heights of the pieces.
Print a single integer — the number of seconds required to smash all the potatoes following the process described in the problem statement.
5 6 35 4 3 2 1
5
5 6 35 5 5 5 5
10
5 6 31 2 1 1 1
2
Consider the first sample.
- First Vanya puts the piece of potato of height 5 into processor. At the end of the second there is only amount of height 2 remaining inside.
- Now Vanya puts the piece of potato of height 4. At the end of the second there is amount of height 3 remaining.
- Vanya puts the piece of height 3 inside and again there are only 3 centimeters remaining at the end of this second.
- Vanya finally puts the pieces of height 2 and 1 inside. At the end of the second the height of potato in the processor is equal to 3.
- During this second processor finally smashes all the remaining potato and the process finishes.
In the second sample, Vanya puts the piece of height 5 inside and waits for 2 seconds while it is completely smashed. Then he repeats the same process for 4 other pieces. The total time is equal to 2·5 = 10 seconds.
In the third sample, Vanya simply puts all the potato inside the processor and waits 2 seconds.
题意:
用机器打土豆,要求:
没达到机器额定容量 h 可以持续往里面放,每秒钟打下 k,问最少的时间。
输入数据提示:
给定 n h k ,分别是土豆数量,机器限制的土豆高度,每秒钟打下的高度。
思路:
看注释模拟的部分,问题就是很尴尬。我明明输出的是 5 ,这bug。。。。。
未通过代码Code:
#include<cstdio>#include<cstring>const int MYDD=1103+1e5;int pot[MYDD];int main() {int n,h,k;while(scanf("%d%d%d",&n,&h,&k)!=EOF) {for(int j=1; j<=n; j++)scanf("%d",&pot[j]);int ans=0,sum=0;pot[0]=0;for(int j=0; j<=n; ) {//j++while(sum<=h) {//一直装填j++;sum+=pot[j];}sum-=pot[j];//去掉本轮次装的最后一个ans+=sum/k;//耗时sum%=k;//加工后还能添加的高度if(sum+pot[j]>h) {//下一个土豆不能够加入ans++;sum=0;}j--;//为了 while()第一个pot[j]累加到 sum}printf("%d\n",ans);}return 0;}/*By: Shyazhut*/
- CodeForces 677B Vanya and Food Processor(打土豆,模拟)
- codeforces 677B Vanya and Food Processor(模拟)
- codeforces 677 B Vanya and Food Processor (模拟)
- Codeforces 677B Vanya and Food Processor【模拟】
- CodeForces 677B Vanya and Food Processor
- Codeforces 677B Vanya and Food Processor (模拟的好题)
- Codeforces Round #355 (Div. 2)-B. Vanya and Food Processor(模拟)
- B. Vanya and Food Processor
- Codeforces Round #355 (Div. 2) B. Vanya and Food Processor (模拟)
- Codeforces Round #355 (Div. 2) B. Vanya and Food Processor
- Codeforces Round #355 (Div. 2) B. Vanya and Food Processor(贪心)
- Vanya and Food Processor
- Codeforces Round #355 (Div. 2)-B. Vanya and Food Processor,纯考思路~~
- ★【16.6.2】Codeforces Round #355 (Div. 2) B. Vanya and Food Processor
- codeforces #492B# Vanya and Lanterns(贪心)
- B. Vanya and Books(Codeforces Round #308 (Div. 2))
- (Vanya and Lanterns)Codeforces Round #280 (Div. 2)B
- Vanya and Lanterns( Codeforces Round #280 (Div. 2)B)
- 理解OAuth2.0
- 【HDU 杭电 1513 Palindrome 】
- 《数学建模》之最优化(规划)数学模型
- 解析设计模式
- 记忆化搜索
- CodeForces 677B Vanya and Food Processor(打土豆,模拟)
- Mysql之校对集问题
- jzoj 1348. 【2011.12.17普及模拟】越野跑
- tjut 2865
- Mybatis执行Update返回行数为负数
- vim之vim基础知识
- jsp之javaweb在学习
- HDU-5671 Matrix
- 动态建树之——查字典