Submission #1176289

#TimeUsernameProblemLanguageResultExecution timeMemory
1176289avighnaTwo Dishes (JOI19_dishes)C++20
3 / 100
1446 ms9792 KiB
#include <bits/stdc++.h> typedef long long ll; int main() { std::ios_base::sync_with_stdio(false); std::cin.tie(nullptr); int n, m; std::cin >> n >> m; std::vector<ll> a(n), s(n), p(n); for (int i = 0; i < n; ++i) { std::cin >> a[i] >> s[i] >> p[i]; } std::vector<ll> b(m), t(m), q(m); for (int i = 0; i < m; ++i) { std::cin >> b[i] >> t[i] >> q[i]; } ll ans = 0; for (int mask = 0; mask < (1 << (n + m)); ++mask) { ll cur_ans = 0; bool good = true; ll time = 0; int idx1 = 0, idx2 = 0; for (int i = 0; i < n + m; ++i) { if (mask & (1 << i)) { if (idx1 >= n) { good = false; break; } time += a[idx1]; if (time <= s[idx1]) { cur_ans += p[idx1]; } idx1++; } else { if (idx2 >= m) { good = false; break; } time += b[idx2]; if (time <= t[idx2]) { cur_ans += q[idx2]; } idx2++; } } if (good) { ans = std::max(ans, cur_ans); } } std::cout << ans << '\n'; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...