首页 > 代码库 > UVa1149 Bin Packing (贪心)
UVa1149 Bin Packing (贪心)
链接:http://vjudge.net/problem/UVA-1149
分析:贪心的放,先放重的,剩下的容量看能不能放进一个轻的。
1 #include <cstdio> 2 #include <algorithm> 3 using namespace std; 4 5 const int maxn = 100000 + 5; 6 7 int a[maxn]; 8 9 int main() {10 int T;11 scanf("%d", &T);12 for (int kase = 0; kase < T; kase++) {13 if (kase) printf("\n");14 int n, l;15 scanf("%d%d", &n, &l);16 for (int i = 0; i < n; i++) scanf("%d", &a[i]);17 sort(a, a + n);18 int L = 0, R = n-1, ans = 0;19 while (L <= R) {20 if (L == R) { ans++; break; }21 if (a[L] + a[R] <= l) { ans++; L++; R--; }22 else { ans++; R--; }23 }24 printf("%d\n", ans);25 }26 return 0;27 }
UVa1149 Bin Packing (贪心)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。