이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define all(x) x.begin(), x.end()
#define size(x) (int)x.size()
template<class S, class T>
bool chmin(S &a, const T &b) {
return a > b ? (a = b) == b : false;
}
template<class S, class T>
bool chmax(S &a, const T &b) {
return a < b ? (a = b) == b : false;
}
signed main() {
cin.tie(nullptr)->sync_with_stdio(false);
int n; cin >> n;
int c[n], f[n], v[n];
for (int i = 0; i < n; ++i) {
cin >> c[i] >> f[i] >> v[i];
}
int m; cin >> m;
vector<array<int, 3>> vec(m);
for (int i = 0; i < m; ++i) {
cin >> vec[i][2] >> vec[i][0] >> vec[i][1];
}
sort(all(vec));
int res = 0;
while (!vec.empty()) {
int V = vec.back()[1], F = vec.back()[0];
int Max = 0;
for (int i = 0; i < n; ++i) {
if (c[i] && f[i] >= F && v[i] <= V) {
chmax(Max, v[i]);
}
}
res += Max;
for (int i = 0; i < n; ++i) {
if (c[i] && f[i] >= F && v[i] == Max) {
c[i]--;
break;
}
}
vec.pop_back();
}
cout << res;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |