Choice学姐买糖果 二

来源:互联网 发布:linux压缩和解压命令 编辑:程序博客网 时间:2024/05/22 08:10

题目链接:

                 AC不出来回家种地(大哭)

思路:

          考虑最差情况每种糖果都买到k-1个,那么任一买在买一个就能保证其中某一种糖果的个数达到k个,特别注意如果没有k-1个就直接加上它原本有多少个就行了,数据保证有解意味着有一种糖果的个数大于等于k

AC代码:

#include<stdio.h>using namespace std;int main(){    int n,k,sum,temp,i;    scanf("%d%d",&n,&k);    sum=0;    i=0;    for(i=1;i<=n;i++)    {        scanf("%d",&temp);        //判断糖果个数是否不小于要取的个数        if(temp>=k)//是的话取k-1个            sum+=k-1;        else//不是的话取完            sum+=temp;    }    sum++;    printf("%d\n",sum);    return 0;}
读懂题意:Choice学姐的要求是保证买到的糖果里至少有一种糖果数目达到k个,那么我们取k-1个,最后在sum++就可以了

坑点:没有判断糖果数目小于k的情况,可能直接输出n*(k-1)+1; 这样就错了

思路题目思维不能太局限


原创粉丝点击