zoukankan      html  css  js  c++  java
  • 安徽省小学组省赛2015年第一题 糖果甜度(C++)

    我发现,在网上找不到关于安徽省小学组的题解(甚至是题目),因此,我准备把我做过的安徽省小学组的题解上传,供大家参考。

    1.糖果甜度(candy)

    卡卡西是一个奇幻小说迷,一直憧憬着自己有一天能变成超人,为正义而战。有一天,她放学回家,路过熟悉的糖果店,发现糖果店店员闷闷不乐的样子,正义的卡卡西赶紧上前询问,了解原因。原来贪婪的店长近期为了节省开支,减少
    店员,想出题进行员工考核,到期答不出考题的店员就要被解聘。考题是这样的:
    在一堆甜度不同的 n 个糖果中,假设只能吃 k 个糖果,请问能吃到的最大甜度之
    和是多少。卡卡西冲着店员自信的一笑,拍拍胸脯说:“放心吧,我来帮你解出
    这道题,你一定不会被解聘的!”聪明的小朋友们,你们知道如何解出这道题,
    帮助店员度过难关吗?

    输入:输入数据有两行。第一行有两个数,分别表示糖果的总个数 n 和能吃的
    糖果个数 k;第二行有 n个数,用空格分开,分别表示每个糖果的甜度。
    输出:能吃到的最大甜度之和。

    样例: 输入:(candy.in) 5 2 6 2 5 1 8 输出:(candy.out) 14 样例解释:先吃甜度为 8 的糖,再吃甜度为 6 的糖,甜度之和为 14。

    数据范围:0<n≤10000,0≤k≤1000,0<每个糖果的甜度≤100

    本题思路:

    这题可谓是一道大水题啊。直接排序,不过是逆序排序哦,这可能就是出题人想考的吧。接着,累加前k位数字,输出总和就可以了。下面附上本蒟蒻的代码。

    #include<iostream>
    #include<cstdio>
    #include<cmath>
    #include<cstring>
    #include<algorithm>
    using namespace std;
    int cmp(int a,int b)
    {
        return a>b;
    }
    int main()
    {
        int n,k,sum=0,temp=0;
        cin>>n>>k;
        int a[n];
        for (int i=0;i<n;i++)
            cin>>a[i];
        sort(a,a+n,cmp);
        for (int i=0;i<k;i++)
            sum=sum+a[i];
        cout<<sum<<endl;
        return 0;
    }
    
    

    作者:暄妍

    我的博客:http://www.cnblogs.com/zbyrainbow/

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    How To : OCR / Vote disk Maintenance Operations: (ADD/REMOVE/REPLACE/MOVE)
    循序渐进解读Oracle AWR性能分析报告
    为11gR2 Grid Infrastructure增加新的public网络
    12C开始oracle实现了SCALABLE LGWR多进程并行写redo log
    万字详解Oracle架构、原理、进程,学会世间再无复杂架构
    PowerShell 连接SQL Server 数据库
    Oracle 性能分析与诊断|跟踪诊断&优化SQL 语句
    安装oracle 11gr2 rac on solaris
    oracle EOS
    K8S集群认证之RBAC
  • 原文地址:https://www.cnblogs.com/zbyrainbow/p/8474401.html
Copyright © 2011-2022 走看看