CCF 201703-1 分蛋糕
2017-11-16 20:42
190 查看
问题描述
输入格式
输出格式
样例输入
样例输出
样例说明
评测用例规模与约定
解题思路
小明今天生日,他有n块蛋糕要分给朋友们吃,这n块蛋糕(编号为1到n)的重量分别为a1, a2, …, an。 小明想分给每个朋友至少重量为k的蛋糕。小明的朋友们已经排好队准备领蛋糕,对于每个朋友,小明总是先将 自己手中编号最小的蛋糕分给他,当这个朋友所分得蛋糕的重量不到k时,再继续将剩下的蛋糕中编号最小的给 他,直到小明的蛋糕分完或者这个朋友分到的蛋糕的总重量大于等于k。 请问当小明的蛋糕分完时,总共有多少个朋友分到了蛋糕。
输入格式
输入的第一行包含了两个整数n, k,意义如上所述。 第二行包含n个正整数,依次表示a1, a2, …, an。
输出格式
输出一个整数,表示有多少个朋友分到了蛋糕。
样例输入
6 9 2 6 5 6 3 5
样例输出
3
样例说明
第一个朋友分到了前3块蛋糕,第二个朋友分到了第4、5块蛋糕,第三个朋友分到了最后一块蛋糕。
评测用例规模与约定
对于所有评测用例,1 ≤ n ≤ 1000,1 ≤ k ≤ 10000,1 ≤ ai ≤ 1000。
解题思路
本题是一道简单的模拟题,值得注意的一点就是求所有分到了蛋糕的朋友数量,故最后一个朋友分到的蛋糕重量可以小于k。
#include <iostream> using namespace std; int a[1001], n, k, temp, ans; int main() { std::ios::sync_with_stdio(false); cin >> n >> k; for (int i = 0; i < n; i++) { cin >> a[i]; } for (int i = 0; i < n; i++) { temp += a[i]; if (temp >= k) { temp = 0; ans++; } } if (temp) { ans++; } cout << ans << endl; return 0; }
相关文章推荐
- 201703-1 分蛋糕 ccf
- CCFCSP 201703-1 分蛋糕
- CCF 201703-1 分蛋糕
- CCF CSP 201703-1 分蛋糕(Java-100分)
- CCF真题-201703-1-分蛋糕
- CCF 201703-1 分蛋糕
- 【CCFCSP】201703-1 分蛋糕
- CCF 201703-1 分蛋糕(Java)
- ccf 201703-1分蛋糕
- CCF-201703-1-分蛋糕
- CCF考试——201703-1分蛋糕
- CCF_CSP:201703-1 分蛋糕
- CCF CSP 201703-1 分蛋糕
- CCF CSP 201703-1 分蛋糕
- CCF 201703-1 分蛋糕 JAVA实现
- CCF 201703-1 分蛋糕
- CCF认证模拟题——分蛋糕
- 201703-1 分蛋糕题解
- ccf 201703-3
- CCF 历年真题之分蛋糕(_1703_1_Cake.java)参考答案