1228 书架

Posted zkw666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1228 书架相关的知识,希望对你有一定的参考价值。

技术图片

定义一个一维数组,用来存储奶牛的高度。因为奶牛越多越危险,所以要尽量使奶牛少。所以就先将最高的奶牛放在最下面,然后按照高度由大到小排列,直到奶牛总高度大于书架高度。

排序用sort比较方便,不过要加头文件 #include<algorithm>

代码:

 1 #include<iostream>
 2 #include<algorithm>
 3 using namespace std;
 4 int cmp(int a,int b)
 5 {
 6     return a>b;
 7 }
 8 int a[30000];
 9 int main()
10 {
11     long long m=0,n,b,s=0;
12     cin>>n>>b;
13     for(int i=1;i<=n;++i)
14     {
15         cin>>a[i];
16     }
17     sort(a+1,a+n+1,cmp);
18     for(int j=1;j<=n;++j)
19     {
20         if(s<b)
21         {
22             s+=a[j];
23             m++;
24         }
25         else
26         {
27             cout<<m;
28             break;
29         }
30     }
31     return 0;
32 }

用s来表示奶牛总高度,定义一个计数器m,每次加一个奶牛,就m++。当s大于等于书架高度时,就输出m,m就是需要奶牛的最小数。

以上是关于1228 书架的主要内容,如果未能解决你的问题,请参考以下文章

代码笔记书架页面

题解报告:hdu 1228 A+B

HDOJ_1228_A+B

JavaScript基础1228JavaScript:void开始----

CF1228D Complete Tripartite

codevs1228 (dfs序+线段树)