博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ccf201703-1分蛋糕
阅读量:5015 次
发布时间:2019-06-12

本文共 1151 字,大约阅读时间需要 3 分钟。

问题描述  小明今天生日,他有n块蛋糕要分给朋友们吃,这n块蛋糕(编号为1到n)的重量分别为a1, a2, …, an。小明想分给每个朋友至少重量为k的蛋糕。 小明的朋友们已经排好队准备领蛋糕,对于每个朋友,小明总是先将自己手中编号最小的蛋糕分给他,当这个朋友所分得蛋糕的重量不到k时, 再继续将剩下的蛋糕中编号最小的给他,直到小明的蛋糕分完或者这个朋友分到的蛋糕的总重量大于等于k。  请问当小明的蛋糕分完时,总共有多少个朋友分到了蛋糕。输入格式  输入的第一行包含了两个整数n, k,意义如上所述。  第二行包含n个正整数,依次表示a1, a2, …, an。输出格式  输出一个整数,表示有多少个朋友分到了蛋糕。样例输入6 92 6 5 6 3 5样例输出3样例说明  第一个朋友分到了前3块蛋糕,第二个朋友分到了第4、5块蛋糕,第三个朋友分到了最后一块蛋糕。评测用例规模与约定  对于所有评测用例,1 ≤ n ≤ 1000,1 ≤ k ≤ 10000,1 ≤ ai ≤ 1000。

这个题目简直是太简单了,但是花费了好多时间,原因在于把题目中的编号最小的蛋糕想当然的理解成了重量最小的了,所以说,仔细审题啊,朋友们。思路太简单了就贴一下代码了。

public class GiveCake {    public static void main(String[] args) {        Scanner sc = new Scanner(System.in);        int cakeNum = sc.nextInt();//蛋糕数量        int weight = sc.nextInt();//每个人至少分的的重量        int subWeight = 0;//每个人分的的总重量        int count = 0;//共有几个人分得了蛋糕        for (int i = 0; i < cakeNum; i++) {            subWeight += sc.nextInt();            if(subWeight >= weight){                count ++;                subWeight = 0;            }        }        //最后一个人分到蛋糕的情况        if(subWeight>0)            count ++;        System.out.println(count);    }    }

 

转载于:https://www.cnblogs.com/syq816/p/10070865.html

你可能感兴趣的文章
在 mvc4 WebApi 中 json 的 跨域访问
查看>>
敏捷开发文章读后感
查看>>
xposed获取context 的方法
查看>>
html5 canvas 图像处理
查看>>
He who hesitates is Lost
查看>>
php中引用&的真正理解-变量引用、函数引用、对象引用
查看>>
关于<form> autocomplete 属性
查看>>
OutOfMemory
查看>>
LeetCode:组合总数III【216】
查看>>
Thinkphp框架回顾(三)之怎么实现平常的sql操作数据库
查看>>
虚函数的效率问题
查看>>
POJ 1860 Currency Exchange(SPFA 判断有无“正”环)
查看>>
广告地址屏蔽
查看>>
收缩SqlServer数据库日记方法
查看>>
每日英语:15 places to find inspiration
查看>>
学习方法--提问
查看>>
【转】每天一个linux命令(3):pwd命令
查看>>
merge-two-sorted-lists
查看>>
MySQL(3)
查看>>
poj1061——扩展gcd水题
查看>>