Codeforces 677B Vanya and Food Processor (模拟的好题)
来源:互联网 发布:工程问题c语言求解 pdf 编辑:程序博客网 时间:2024/04/28 13:30
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.
以前的模拟题全身通过数学规律 将答案的边界限定住 在查找。
这倒题给我的感觉就是用数学的计算的过程模拟 题目所要求的方法。
代码:
#include<stdio.h>#include<string.h>using namespace std;int main(){ int n,m,k; __int64 ans=0; scanf("%d%d%d",&n,&m,&k); int x,temp=0; for(int i=0;i<n;i++) { scanf("%d",&x); if(x+temp>m) { ans++; temp=0; } temp=temp+x; ans=ans+temp/k; temp=temp%k; } if(temp)ans++; printf("%I64d\n",ans);}
- 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 677B 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,纯考思路~~
- Codeforces Round #355 (Div. 2) B. Vanya and Food Processor(贪心)
- ★【16.6.2】Codeforces Round #355 (Div. 2) B. Vanya and Food Processor
- Codeforces 492D Vanya and Computer Game【模拟+循环节+思维】好题~
- CodeForces 552A-Vanya and Table【模拟】
- Codeforces 492B. Vanya and Lanterns 二分
- Codeforces 492B Vanya and Lanterns(水)
- 文章标题
- 斯特林公式
- MFC对话框最大化实现
- IPC网络高清摄像机基础知识2(安霸半导体公司产品介绍 “来自2016年”)
- wireshark 使用lua解析自定义包
- Codeforces 677B Vanya and Food Processor (模拟的好题)
- 可视化,actionscript air
- Aliyun linux5.7 64位 配置多个tomcat
- 线程间协作的两种方式:wait、notify、notifyAll和Condition
- 部署NTP服务器进行时间同步
- PN learning
- LinkedList源码剖析
- 关于drawable和mipmap
- Android:使用Gson解析复杂的JSON数据