| Run ID | 作者 | 问题 | 语言 | 测评结果 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|
| 82582 | sh25_chenyj | 钓鱼 | C++ | 无测评数据 | 0 MS | 0 KB | 1186 | 2026-01-15 19:32:29 |
#include <iostream> #include <algorithm> using namespace std; int main() { int n, h; cin >> n >> h; int F[26] = {0}, d[26] = {0}, t[26] = {0}; for (int i = 1; i <= n; i++) cin >> F[i]; for (int i = 1; i <= n; i++) cin >> d[i]; for (int i = 1; i <= n - 1; i++) cin >> t[i]; int T = h * 12; int max_fish = 0; for (int k = 1; k <= n; k++) { int travel_time = 0; for (int i = 1; i <= k - 1; i++) travel_time += t[i]; int R = T - travel_time; if (R <= 0) continue; int count[26] = {0}; int total = 0; for (int time = 0; time < R; time++) { int best = -1, best_idx = -1; for (int i = 1; i <= k; i++) { int fish = F[i] - d[i] * count[i]; if (fish < 0) fish = 0; if (fish > best) { best = fish; best_idx = i; } } if (best <= 0) break; total += best; count[best_idx]++; } max_fish = max(max_fish, total); } cout << max_fish << endl; return 0; }