|
@@ -7,15 +7,17 @@ struct Box {
|
|
|
int Bi;
|
|
|
};
|
|
|
|
|
|
-bool judge(int V, int maxAi, int maxBi, int allAi) {
|
|
|
- if (maxAi > maxBi){
|
|
|
- return false;
|
|
|
- }
|
|
|
- if (allAi > V){
|
|
|
+bool compare(Box a, Box b) {
|
|
|
+ return a.Bi > b.Bi;
|
|
|
+}
|
|
|
+
|
|
|
+bool judge(int V, int N, int maxAi, int maxBi, Box *boxes) {
|
|
|
+ if (maxAi > maxBi) {
|
|
|
return false;
|
|
|
}
|
|
|
- if(maxBi > V){
|
|
|
- return false;
|
|
|
+ sort(boxes, boxes + N, compare);
|
|
|
+ for (int i = 0; i < N; i++) {
|
|
|
+
|
|
|
}
|
|
|
return true;
|
|
|
}
|
|
@@ -42,7 +44,7 @@ int main() {
|
|
|
allAi += box.Ai;
|
|
|
boxes[j] = box;
|
|
|
}
|
|
|
- cout << (judge(V, maxAi, maxBi, allAi) ? "YES" : "NO") << endl;
|
|
|
+ cout << (judge(V, N, maxAi, maxBi, boxes) ? "YES" : "NO") << endl;
|
|
|
free(boxes);
|
|
|
}
|
|
|
}
|