17暑假练习赛2 Codeforces Round #501 (Div. 3)  1015C


贪心水题,思路简单

坑点:不开long long会过不去,以后统一用long long做题

失误:考虑到了最小值大于容量的情况却没判断最大值小于容量的情况


#include<iostream>
#include<algorithm>
using namespace std;
long long int n,m,ans;//n songs  m max_store
struct Song
{long long int before,after,differ;
}song[100008];
bool cmp(Song a,Song b){return a.differ>b.differ;}
long long int maxx,minn;
int main()
{while(cin>>n>>m){maxx=0,minn=0,ans=0;for(long long int i=1;i<=n;i++){cin>>song[i].before>>song[i].after;song[i].differ=song[i].before-song[i].after;maxx+=song[i].before;minn+=song[i].after;}if(minn>m) cout<<"-1"<<endl;else if(minn==m) cout<<n<<endl;else if(maxx<=m) cout<<"0"<<endl;else{sort(song+1,song+n+1,cmp);for(long long int i=1;maxx>m&&i<=n;i++){maxx-=song[i].differ;ans++;}cout<<ans<<endl;}}
}

【贪心】Songs Compression相关推荐

  1. cf-#501 div3 C. Songs Compression

    题目链接:http://codeforces.com/contest/1015/problem/C 就是输入n和m,m为存储空间 然后n行a和b   a大于b 每一行的a可以压缩为b的大小 求最少只需 ...

  2. CF1015C Songs Compression (#贪心)

    题目描述 Ivan has nn songs on his phone. The size of the ii -th song is a_iai​ bytes. Ivan also has a fl ...

  3. Songs Compression

    https://codeforces.com/contest/1015/problem/C C++版本一 简单排序 /* *@Author: STZG *@Language: C++ */ #incl ...

  4. CodeForces 1015 C Songs Compression

    [题目]http://codeforces.com/contest/1015/problem/C [大意]硬盘容量为21,有4首歌,前是原来大小,后是压缩大小,问最少压缩多少个能全装下. [代码] # ...

  5. 基础算法 —— 贪心算法

    [概述] 贪心算法是从问题的初始状态出发,通过若干次的贪心选择而得到的最优值的一种求解策略,即贪心策略. 简单来说,贪心策略是一种在每次决策时采取当前意义下最优策略的算法,做出的选择至少在某种约束条件 ...

  6. Codeforces Round #501 (Div. 3)【未完结】

    2022.3.7 题单地址:https://codeforces.com/contest/1015 目录 A. Points in Segments B. Obtaining the String[模 ...

  7. UVa1346 - Songs(贪心算法)

    问题:给出n首歌,已知其长度len和使用频率freq.将这些歌按照一定顺序存到磁带中,要求最小. 思路: 以两个为例,s1s2和s2s1计算为 s1s2顺序时为:f1*l1+f2*(l1+l2) s2 ...

  8. UVA - 1346 Songs (贪心+排序)

    题意:已知每首歌的标号,长度和播放频率,求一种播放顺序,使得最小,并且输出该播放顺序下第t首歌的标号. 分析: 1.长度越短,播放频率越大的歌排在前面,上式越小. 2.s(i)表示的是当前播放顺序下这 ...

  9. Codeforces Global Round 12 D. Rating Compression 思维 + 贪心

    传送门 题意: 给一个长度为nnn的数组aaa,定义一个数组bbb,且bj=minj<=i<=j+k−1aib_j=min_{j<=i<=j+k-1}a_ibj​=minj&l ...

最新文章

  1. 递归式求时间复杂度的代入法与迭代法的举例讲解
  2. 信息论——密码学笔记(七)
  3. 腾讯X5联手白鹭Egret Runtime 合作共推HTML5游戏发展
  4. 用phpmyadmin更改root密码的方法
  5. MySQL——JSON_REPLACE()函数修改JSON属性值
  6. 李群与李代数2:李代数求导和李群扰动模型
  7. 基础强化:深入理解JVM中的方法调用
  8. 具体数学-第12课(数论进阶与组合数入门)
  9. Mac端SVN工具CornerStone详解
  10. apache poi使用例_Apache POI使用详解
  11. 笔杆子被领导倚重的核心竞争力是什么?
  12. DNS服务器安装(linux)
  13. UE4 设置Play下的默认相机FOV(Field Of View)视角
  14. IT运维工程师要会什么?
  15. 计算机网络——数据链路层介质访问控制
  16. 【揭秘恒大老总许家印】迄今为止最深度、全面的。
  17. 【数据分析】滴滴数据分析岗实习经验
  18. Oracle-09:聚合函数
  19. MySQL高级SQL语句(开端)
  20. 【相机标定】相机内参

热门文章

  1. pitfall fields
  2. python基础之输入输出语法
  3. matlab验证角谷猜想问题,角谷猜想1.5编程基础之循环控制21
  4. 浏览器无法上网,其他软件可以
  5. Weixin4j微信开发网页授权获取openid案例
  6. 卡西欧计算机蓝屏的处理方法,电脑出现蓝屏怎么办 电脑出现蓝屏解决方法【图文详解】...
  7. matlab计算热岛效应强度,城市热岛热岛强度.ppt
  8. jvav是什么梗?jvav是什么?jvav史上最牛语言
  9. 互联网3D数字化时代,3D产品展示开启新商机
  10. matlab读取txt数据文件