# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1105079 | 2024-10-25T09:50:44 Z | VinhLuu | Remittance (JOI19_remittance) | C++17 | 2 ms | 6620 KB |
#include <bits/stdc++.h> #define int long long #define ll long long using namespace std; const int N = 1e6 + 5; const int oo = 1e9; int c[N], n, a[N], b[N]; bool f[N]; int st[N << 1]; void update(int i){ i += n - 1; while(i > 1){ i /= 2; if(c[st[i << 1]] >= c[st[i << 1|1]]) st[i] = st[i << 1]; else st[i] = st[i << 1|1]; } } signed main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); #define task "v" if(fopen(task ".inp","r")){ freopen(task ".inp","r",stdin); freopen(task ".out","w",stdout); } cin >> n; for(int i = 1; i <= n; i ++){ cin >> a[i] >> b[i]; c[i] = a[i] - b[i]; st[i + n - 1] = i; } for(int i = n - 1; i >= 1; i --){ if(c[st[i << 1]] >= c[st[i << 1|1]]) st[i] = st[i << 1]; else st[i] = st[i << 1|1]; } while(true){ if(c[st[1]] <= 1) break; // cerr << st[1] << " " << c[st[1]] << " k\n"; int nx = (st[1] == n ? 1 : st[1] + 1); int val = c[st[1]] / 2; c[nx] += val; c[st[1]] -= val * 2; update(nx); update(st[1]); } bool ff = true, gg = true, vv = true; for(int i = 1; i <= n; i ++){ if(c[i] < 0){ cout << "No\n"; return 0; } if(c[i] != 0) ff = false; if(c[i] == 0) vv = false; if(c[i] + b[i] > 1) gg = false; } if(ff){ cout << "Yes\n"; return 0; } if(!gg && vv){ cout << "Yes\n"; }else cout << "No\n"; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 6480 KB | Output is correct |
2 | Correct | 2 ms | 6480 KB | Output is correct |
3 | Correct | 1 ms | 6480 KB | Output is correct |
4 | Correct | 1 ms | 6480 KB | Output is correct |
5 | Correct | 1 ms | 6480 KB | Output is correct |
6 | Correct | 1 ms | 6480 KB | Output is correct |
7 | Correct | 2 ms | 6620 KB | Output is correct |
8 | Correct | 1 ms | 6480 KB | Output is correct |
9 | Correct | 1 ms | 6480 KB | Output is correct |
10 | Correct | 1 ms | 6480 KB | Output is correct |
11 | Correct | 1 ms | 6480 KB | Output is correct |
12 | Correct | 1 ms | 6480 KB | Output is correct |
13 | Correct | 1 ms | 6480 KB | Output is correct |
14 | Correct | 2 ms | 6480 KB | Output is correct |
15 | Correct | 1 ms | 6480 KB | Output is correct |
16 | Correct | 1 ms | 6480 KB | Output is correct |
17 | Correct | 1 ms | 6620 KB | Output is correct |
18 | Correct | 1 ms | 6480 KB | Output is correct |
19 | Correct | 1 ms | 6480 KB | Output is correct |
20 | Correct | 1 ms | 6480 KB | Output is correct |
21 | Correct | 1 ms | 6480 KB | Output is correct |
22 | Correct | 1 ms | 6480 KB | Output is correct |
23 | Correct | 1 ms | 6480 KB | Output is correct |
24 | Incorrect | 2 ms | 6480 KB | Output isn't correct |
25 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 6480 KB | Output is correct |
2 | Correct | 2 ms | 6480 KB | Output is correct |
3 | Correct | 1 ms | 6480 KB | Output is correct |
4 | Correct | 1 ms | 6480 KB | Output is correct |
5 | Correct | 1 ms | 6480 KB | Output is correct |
6 | Correct | 1 ms | 6480 KB | Output is correct |
7 | Correct | 2 ms | 6620 KB | Output is correct |
8 | Correct | 1 ms | 6480 KB | Output is correct |
9 | Correct | 1 ms | 6480 KB | Output is correct |
10 | Correct | 1 ms | 6480 KB | Output is correct |
11 | Correct | 1 ms | 6480 KB | Output is correct |
12 | Correct | 1 ms | 6480 KB | Output is correct |
13 | Correct | 1 ms | 6480 KB | Output is correct |
14 | Correct | 2 ms | 6480 KB | Output is correct |
15 | Correct | 1 ms | 6480 KB | Output is correct |
16 | Correct | 1 ms | 6480 KB | Output is correct |
17 | Correct | 1 ms | 6620 KB | Output is correct |
18 | Correct | 1 ms | 6480 KB | Output is correct |
19 | Correct | 1 ms | 6480 KB | Output is correct |
20 | Correct | 1 ms | 6480 KB | Output is correct |
21 | Correct | 1 ms | 6480 KB | Output is correct |
22 | Correct | 1 ms | 6480 KB | Output is correct |
23 | Correct | 1 ms | 6480 KB | Output is correct |
24 | Incorrect | 2 ms | 6480 KB | Output isn't correct |
25 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 6480 KB | Output is correct |
2 | Correct | 2 ms | 6480 KB | Output is correct |
3 | Correct | 1 ms | 6480 KB | Output is correct |
4 | Correct | 1 ms | 6480 KB | Output is correct |
5 | Correct | 1 ms | 6480 KB | Output is correct |
6 | Correct | 1 ms | 6480 KB | Output is correct |
7 | Correct | 2 ms | 6620 KB | Output is correct |
8 | Correct | 1 ms | 6480 KB | Output is correct |
9 | Correct | 1 ms | 6480 KB | Output is correct |
10 | Correct | 1 ms | 6480 KB | Output is correct |
11 | Correct | 1 ms | 6480 KB | Output is correct |
12 | Correct | 1 ms | 6480 KB | Output is correct |
13 | Correct | 1 ms | 6480 KB | Output is correct |
14 | Correct | 2 ms | 6480 KB | Output is correct |
15 | Correct | 1 ms | 6480 KB | Output is correct |
16 | Correct | 1 ms | 6480 KB | Output is correct |
17 | Correct | 1 ms | 6620 KB | Output is correct |
18 | Correct | 1 ms | 6480 KB | Output is correct |
19 | Correct | 1 ms | 6480 KB | Output is correct |
20 | Correct | 1 ms | 6480 KB | Output is correct |
21 | Correct | 1 ms | 6480 KB | Output is correct |
22 | Correct | 1 ms | 6480 KB | Output is correct |
23 | Correct | 1 ms | 6480 KB | Output is correct |
24 | Incorrect | 2 ms | 6480 KB | Output isn't correct |
25 | Halted | 0 ms | 0 KB | - |