# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
945989 | 2024-03-14T09:21:36 Z | iaraha | Bank (IZhO14_bank) | C++14 | 295 ms | 44772 KB |
// Эксперт до 15.04.2024 Насиб #pragma GCC optimize ("Ofast") #include <bits/stdc++.h> using namespace std; using ll = long long; using ld = long double; #define pf push_front #define pof pop_front #define pb push_back #define pob pop_back #define fi first #define se second #define Yes cout << "YES \n" #define No cout << "NO \n" #define Ferarri ios_base::sync_with_stdio(0); cin.tie(NULL); cout.tie(NULL); //////////////////// the code below //////////////////// bool dp[(1 << 21) + 5][25] = {}; ll mp[(1 << 21) + 5] = {}; signed main(){ Ferarri ll n, m; cin >> n >> m; ll a[n], b[m]; vector<ll>w[n + 5]; vector<ll> can[n + 5]; for (ll i = 0; i < n; i++) { cin >> a[i]; } for (ll i = 0; i < m; i++) { cin >> b[i]; } for (ll i = 0; i < (1 << m); i++) { ll s = 0; for (ll j = 0; j < m; j++) { if (i & (1 << (m - j - 1))) { s += b[j]; } } mp[i] = s; } bool chk = 0; for (ll i = 0; i < n; i++) { for (ll j = 0; j < (1 << m); j++) { if (mp[j] == a[i]) { w[i].pb(j); if (i == 0) { can[0].push_back(j); dp[j][i] = 1; if (n == 1) chk = 1; } } } } for (ll i = 1; i < n; i++) { for (ll j = 0; j < w[i].size(); j++) { for (ll k = 0; k < can[i - 1].size(); k++) { if (!(w[i][j] & can[i - 1][k]) && !dp[w[i][j] + can[i - 1][k]][i]) { dp[w[i][j] + can[i - 1][k]][i] = 1; can[i].push_back(w[i][j] + can[i - 1][k]); if (i == n - 1) chk = 1; } } } } if (chk) Yes; else No; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 2392 KB | Output is correct |
2 | Correct | 1 ms | 344 KB | Output is correct |
3 | Correct | 1 ms | 2392 KB | Output is correct |
4 | Correct | 2 ms | 6748 KB | Output is correct |
5 | Correct | 42 ms | 8796 KB | Output is correct |
6 | Correct | 1 ms | 348 KB | Output is correct |
7 | Correct | 1 ms | 2392 KB | Output is correct |
8 | Correct | 56 ms | 37744 KB | Output is correct |
9 | Correct | 41 ms | 8788 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 2396 KB | Output is correct |
2 | Correct | 1 ms | 2396 KB | Output is correct |
3 | Correct | 1 ms | 2396 KB | Output is correct |
4 | Correct | 1 ms | 2396 KB | Output is correct |
5 | Correct | 0 ms | 2396 KB | Output is correct |
6 | Correct | 1 ms | 2396 KB | Output is correct |
7 | Correct | 1 ms | 2396 KB | Output is correct |
8 | Correct | 0 ms | 2396 KB | Output is correct |
9 | Correct | 1 ms | 2396 KB | Output is correct |
10 | Correct | 1 ms | 2396 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 2652 KB | Output is correct |
2 | Correct | 2 ms | 4444 KB | Output is correct |
3 | Correct | 2 ms | 2652 KB | Output is correct |
4 | Correct | 1 ms | 348 KB | Output is correct |
5 | Correct | 2 ms | 2396 KB | Output is correct |
6 | Correct | 1 ms | 348 KB | Output is correct |
7 | Correct | 2 ms | 4440 KB | Output is correct |
8 | Correct | 2 ms | 4444 KB | Output is correct |
9 | Correct | 1 ms | 2396 KB | Output is correct |
10 | Correct | 1 ms | 2396 KB | Output is correct |
11 | Correct | 1 ms | 348 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 2392 KB | Output is correct |
2 | Correct | 1 ms | 344 KB | Output is correct |
3 | Correct | 1 ms | 2392 KB | Output is correct |
4 | Correct | 2 ms | 6748 KB | Output is correct |
5 | Correct | 42 ms | 8796 KB | Output is correct |
6 | Correct | 1 ms | 348 KB | Output is correct |
7 | Correct | 1 ms | 2392 KB | Output is correct |
8 | Correct | 56 ms | 37744 KB | Output is correct |
9 | Correct | 41 ms | 8788 KB | Output is correct |
10 | Correct | 1 ms | 2396 KB | Output is correct |
11 | Correct | 1 ms | 2396 KB | Output is correct |
12 | Correct | 1 ms | 2396 KB | Output is correct |
13 | Correct | 1 ms | 2396 KB | Output is correct |
14 | Correct | 0 ms | 2396 KB | Output is correct |
15 | Correct | 1 ms | 2396 KB | Output is correct |
16 | Correct | 1 ms | 2396 KB | Output is correct |
17 | Correct | 0 ms | 2396 KB | Output is correct |
18 | Correct | 1 ms | 2396 KB | Output is correct |
19 | Correct | 1 ms | 2396 KB | Output is correct |
20 | Correct | 1 ms | 2652 KB | Output is correct |
21 | Correct | 2 ms | 4444 KB | Output is correct |
22 | Correct | 2 ms | 2652 KB | Output is correct |
23 | Correct | 1 ms | 348 KB | Output is correct |
24 | Correct | 2 ms | 2396 KB | Output is correct |
25 | Correct | 1 ms | 348 KB | Output is correct |
26 | Correct | 2 ms | 4440 KB | Output is correct |
27 | Correct | 2 ms | 4444 KB | Output is correct |
28 | Correct | 1 ms | 2396 KB | Output is correct |
29 | Correct | 1 ms | 2396 KB | Output is correct |
30 | Correct | 1 ms | 348 KB | Output is correct |
31 | Correct | 46 ms | 37460 KB | Output is correct |
32 | Correct | 93 ms | 37768 KB | Output is correct |
33 | Correct | 49 ms | 27476 KB | Output is correct |
34 | Correct | 49 ms | 12924 KB | Output is correct |
35 | Correct | 48 ms | 12884 KB | Output is correct |
36 | Correct | 57 ms | 10832 KB | Output is correct |
37 | Correct | 52 ms | 16976 KB | Output is correct |
38 | Correct | 50 ms | 9044 KB | Output is correct |
39 | Correct | 70 ms | 35912 KB | Output is correct |
40 | Correct | 48 ms | 10872 KB | Output is correct |
41 | Correct | 71 ms | 10836 KB | Output is correct |
42 | Correct | 50 ms | 33104 KB | Output is correct |
43 | Correct | 48 ms | 19280 KB | Output is correct |
44 | Correct | 65 ms | 8824 KB | Output is correct |
45 | Correct | 48 ms | 33104 KB | Output is correct |
46 | Correct | 49 ms | 32084 KB | Output is correct |
47 | Correct | 53 ms | 12928 KB | Output is correct |
48 | Correct | 51 ms | 37456 KB | Output is correct |
49 | Correct | 43 ms | 8824 KB | Output is correct |
50 | Correct | 130 ms | 43972 KB | Output is correct |
51 | Correct | 52 ms | 34224 KB | Output is correct |
52 | Correct | 66 ms | 16004 KB | Output is correct |
53 | Correct | 295 ms | 38740 KB | Output is correct |
54 | Correct | 135 ms | 42792 KB | Output is correct |
55 | Correct | 128 ms | 44000 KB | Output is correct |
56 | Correct | 160 ms | 44772 KB | Output is correct |
57 | Correct | 162 ms | 44472 KB | Output is correct |
58 | Correct | 142 ms | 44488 KB | Output is correct |