# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
37763 | 2017-12-28T05:07:46 Z | Just_Solve_The_Problem | Bank (IZhO14_bank) | C++11 | 480 ms | 1636 KB |
#include <bits/stdc++.h> using namespace std; const int N = (int)22; const int NN = (1 << 20); int a[N], b[N]; bool dp[NN]; bool used[NN]; int n, m; void go (int mask, vector < int > vec) { bool fl = 1; if (used[mask]) return ; used[mask] = 1; for (int i = 0; i < n; i++) { if (vec[i] != 0) fl = 0; } if (fl) { // cout << mask << endl; puts("YES"); exit(0); } for (int i = 0; i < n; i++) { if (vec[i] == 0) continue; for (int j = 0; j < m; j++) { if (vec[i] >= b[j] && !(mask & (1 << j))) { vec[i] -= b[j]; go(mask | (1 << j), vec); vec[i] += b[j]; } } } } main () { scanf ("%d %d", &n, &m); for (int i = 0; i < n; i++) { scanf ("%d", a + i); } sort(a, a + n); for (int i = 0; i < m; i++) { scanf ("%d", b + i); } sort(b, b + m); vector < int > vec(n); for (int i = 0; i < n; i++) { vec[i] = a[i]; } go(0, vec); puts("NO"); }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
2 | Correct | 1 ms | 380 KB | Output is correct |
3 | Correct | 2 ms | 456 KB | Output is correct |
4 | Correct | 2 ms | 500 KB | Output is correct |
5 | Correct | 2 ms | 576 KB | Output is correct |
6 | Correct | 2 ms | 576 KB | Output is correct |
7 | Correct | 2 ms | 620 KB | Output is correct |
8 | Correct | 2 ms | 620 KB | Output is correct |
9 | Correct | 480 ms | 1636 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 1636 KB | Output is correct |
2 | Correct | 2 ms | 1636 KB | Output is correct |
3 | Incorrect | 2 ms | 1636 KB | Output isn't correct |
4 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 20 ms | 1636 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
2 | Correct | 1 ms | 380 KB | Output is correct |
3 | Correct | 2 ms | 456 KB | Output is correct |
4 | Correct | 2 ms | 500 KB | Output is correct |
5 | Correct | 2 ms | 576 KB | Output is correct |
6 | Correct | 2 ms | 576 KB | Output is correct |
7 | Correct | 2 ms | 620 KB | Output is correct |
8 | Correct | 2 ms | 620 KB | Output is correct |
9 | Correct | 480 ms | 1636 KB | Output is correct |
10 | Correct | 2 ms | 1636 KB | Output is correct |
11 | Correct | 2 ms | 1636 KB | Output is correct |
12 | Incorrect | 2 ms | 1636 KB | Output isn't correct |
13 | Halted | 0 ms | 0 KB | - |