zoukankan      html  css  js  c++  java
  • CCF 2017-03-1 分蛋糕

    CCF 2017-03-1 分蛋糕

    题目

    问题描述

      小明今天生日,他有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。

    思路

    不是难题,甚至可以不用数组,直接在输入的时候进行一步判断,sum代表当个人拿到的蛋糕,num代表人数,最后需要判断一下sum是否为0.

    代码

    #include<iostream>
    using namespace std;
    
    int main()
    {
    	int n,k;
    	cin>>n>>k;
    	int a;
    	int num=0;
    	int sum=0;
    	for(int i=0;i<n;i++)
    	{
    		cin>>a;
    		sum+=a;
    		if(sum>=k)
    		{
    			num++;
    			sum=0;
    		}
    	}
    	if(sum>0)
    	{
    		num++;
    	}
    	cout<<num;
    	return 0;
    }
    
  • 相关阅读:
    codeforces570D Tree Requests
    codeforces600E Lomsat gelral
    BZOJ2001 [Hnoi2010]City 城市建设
    BZOJ2565 最长双回文串
    BZOJ4031 [HEOI2015]小Z的房间
    BZOJ2467 [中山市选2010]生成树
    SPOJ104 HIGH
    爆零系列—补题A
    DP一直是自己的弱势 开始练滚动数组——HDOJ4502
    HDOJ4550 卡片游戏 随便销毁内存的代价就是wa//string类的一些用法
  • 原文地址:https://www.cnblogs.com/blogxjc/p/11337766.html
Copyright © 2011-2022 走看看