解题思路:
贪心算法,一路贪心下去
注意事项:
参考代码:
#include<iostream> #include<algorithm> using namespace std; const int maxn = 10010; typedef long long LL; struct Block{ LL have; LL sum; LL need; }block[maxn]; bool cmp(Block x,Block y) { return x.need<y.need; } int main(void) { int m,n,count=0; bool ans[10]; cin >> m; while(count<m) { cin >> n; for(int i=0;i<n;i++) cin >> block[i].have >> block[i].sum; for(int i=0;i<n;i++) block[i].need = block[i].sum-block[i].have; sort(block,block+n,cmp); ans[count] = true; LL sum = 0; for(int i=0;i<n;i++) { if(sum+block[i].have>=block[i].sum) { sum+=block[i].have; } else { ans[count]=false; break; } } count++; } for(int i=0;i<m;i++) { if(ans[i]) { cout << "YES" << endl; } else { cout << "NO" << endl; } } return 0; }
0.0分
7 人评分
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:703 |
用筛法求之N内的素数。 (C语言代码)浏览:646 |
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:577 |
C语言训练-大、小写问题 (C语言代码)浏览:677 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:550 |
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:800 |
【魔板】 (C++代码)浏览:1158 |
母牛的故事 (C语言代码)浏览:479 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:494 |
C语言程序设计教程(第三版)课后习题6.11 (C++代码)浏览:511 |