| Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|---|
| 436463 | 顾鑫辰 | 【C6-7】母舰 | C++ | 运行出错 | 0 | 1 MS | 260 KB | 884 | 2026-04-15 20:00:29 |
#include <iostream> #include <algorithm> using namespace std; int main() { int M, N; cin >> M >> N; int def[1005], atk[1005]; // 输入防御 for (int i = 0; i < M; i++) { cin >> def[i]; } // 输入攻击 for (int i = 0; i < N; i++) { cin >> atk[i]; } // 从小到大排序 sort(def, def + M); sort(atk, atk + N); int l = 0, r = N - 1; int d = M - 1; int sum = 0; while (d >= 0 && l <= r) { if (atk[r] > def[d]) { // 大攻击破大防御 r--; d--; } else { // 小攻击送死 l++; } } // 防御全破,剩下攻击全是伤害 if (d < 0) { for (int i = l; i <= r; i++) sum += atk[i]; } cout << sum << endl; return 0; }