#include <bits/stdc++.h>
#define F first
#define S second
using namespace std;
using ll = long long;
using pi = pair<int, int>;
using vi = vector<int>;
template<class T> bool ckmin(T& a, T b) { return b < a ? a = b, true : false; }
template<class T> bool ckmax(T& a, T b) { return a < b ? a = b, true : false; }
int main() {
ios::sync_with_stdio(0); cin.tie(0);
int n, m, q; cin >> n >> m >> q;
vector<vector<int>> a(q+1, vector<int>(n+1));
vector<vector<int>> join(q+1, vector<int>(n+1));
vector<vector<int>> leave(q+1, vector<int>(n+1));
vector<int> types(q+1);
for (int iq = 1; iq <= q; ++iq) {
int t; cin >> t;
for (int i = 1; i <= n; ++i) a[iq][i] = a[iq - 1][i];
if (t == 1) {
int l, r, c, k; cin >> l >> r >> c >> k;
for (int i = l; i <= r; ++i) a[iq][i] += k;
for (int i = l; i <= r; ++i) join[iq][i] += k;
types[iq] = c;
} else if (t == 2) {
int l, r, k; cin >> l >> r >> k;
for (int i = l; i <= r; ++i) a[iq][i] -= k;
for (int i = l; i <= r; ++i) a[iq][i] = max(a[iq][i], 0);
for (int i = l; i <= r; ++i) leave[iq][i] = k;
} else {
int p, x; cin >> p >> x;
if (a[iq][p] < x) {
cout << 0 << "\n";
continue;
}
int day = 0;
for (int i = 1; i < iq; ++i) {
if (a[i][p] == 0) {
day = i;
}
}
int a = 0, b = 0;
for (int i = day + 1; i <= iq; ++i) {
a += leave[i][p];
}
int ans = 0;
for (int i = day + 1; i <= iq; ++i) {
b += join[i][p];
if (b >= a + x) {
ans = types[i];
break;
}
}
cout << ans << "\n";
}
}
}
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |