解题思路:排序思路:按(拥有积木数-需要积木数)由大至小对小朋友进行排序,这样需要得到帮助积木多的小朋友就排在后面,前面的小朋友可以积累更多的帮助积木给后面的小朋友
注意事项:
参考代码:
#include
#include
#include
using namespace std;
bool cmp(pair
{
return (a.first - a.second) > (b.first - b.second);
}
int main()
{
int m;
cin >> m;
int* n = new int[m];
int need, have;
vector<pair
for ( int i = 0; i < m; i++) {
cin >> n[i];
for (int j = 0; j < n[i]; j++) {
cin >> have >> need;
days[i].push_back(make_pair(have, need));
}
sort(days[i].begin(), days[i].end(), cmp);
}
int helpnum = 0;
bool flag = false;
for (int i = 0; i < m; i++) {
flag = false;
helpnum = 0;
for (int j = 0; j < n[i]; j++) {
if (days[i][j].first >= days[i][j].second) {
helpnum += days[i][j].first;
}
else {
if (days[i][j].first + helpnum >= days[i][j].second) {
helpnum += days[i][j].first;
}
else {
cout << "NO" << endl;
flag = true;
break;
}
}
}
if (!flag)
cout << "YES" << endl;
}
}
0.0分
1 人评分
2005年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:530 |
简单的a+b (C语言代码)浏览:595 |
C语言程序设计教程(第三版)课后习题10.1 (Java代码)浏览:1496 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:956 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:350 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:904 |
星期判断机 (C语言代码)浏览:892 |
sizeof的大作用 (C语言代码)浏览:1138 |
C语言程序设计教程(第三版)课后习题12.3 (C语言代码)浏览:587 |
简单的a+b (C语言代码)浏览:473 |