Submission #299428

# Submission time Handle Problem Language Result Execution time Memory
299428 2020-09-14T22:02:44 Z sandoval Detecting Molecules (IOI16_molecules) C++11
31 / 100
19 ms 8320 KB
#include <bits/stdc++.h>
using namespace std;
using ii = pair<int,int>;
using ll = long long;

constexpr int MAXN = 5+1e3;
constexpr ll INF = 1LL<<50;

ll memo[MAXN][MAXN];

ll dp(int i, int s, const vector<int>& w) {
  const int n = (int)w.size();
  if (s <= 0) return 0;
  if (i == n) return INF;
  ll& ans = memo[i][s];
  if (ans != -1) return ans;
  return ans = min(dp(1+i,s,w), w[i]+dp(1+i, s-w[i], w));
}

void go(int i, int s, const vector<int>& w, vector<int>& res) {
  const int n = (int)w.size();
  if (i == n || s <= 0) return;
  const ll d = dp(i,s,w);
  if (dp(1+i,s,w) == d) {
    go(1+i, s, w, res);
    return;
  }
  assert(d == w[i]+dp(1+i, s-w[i], w));
  res.push_back(i);
  go(1+i, s-w[i], w, res);
}

vector<int> find_subset(int l, int u, vector<int> w) {
  memset(memo, -1, sizeof memo);
  ll s = dp(0, l, w);
  if (s >= l && s <= u) {
    vector<int> idx;
    go(0, l, w, idx);
    return idx;
  }
  return {};
}
# Verdict Execution time Memory Grader output
1 Correct 5 ms 8192 KB OK (n = 1, answer = NO)
2 Correct 5 ms 8192 KB OK (n = 1, answer = NO)
3 Correct 5 ms 8192 KB OK (n = 1, answer = YES)
4 Correct 5 ms 8192 KB OK (n = 2, answer = YES)
5 Correct 5 ms 8192 KB OK (n = 2, answer = YES)
6 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
7 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
8 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
9 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
10 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
11 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
12 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
13 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
14 Correct 5 ms 8320 KB OK (n = 3, answer = YES)
15 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
16 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
17 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
18 Correct 6 ms 8192 KB OK (n = 100, answer = NO)
19 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
# Verdict Execution time Memory Grader output
1 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
2 Correct 6 ms 8192 KB OK (n = 12, answer = YES)
3 Correct 5 ms 8192 KB OK (n = 12, answer = NO)
4 Correct 5 ms 8192 KB OK (n = 12, answer = NO)
5 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
6 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
7 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
8 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
9 Correct 5 ms 8192 KB OK (n = 6, answer = YES)
10 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
11 Correct 5 ms 8320 KB OK (n = 100, answer = NO)
12 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
13 Correct 5 ms 8192 KB OK (n = 100, answer = NO)
14 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
15 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
16 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
17 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
# Verdict Execution time Memory Grader output
1 Correct 5 ms 8192 KB OK (n = 1, answer = NO)
2 Correct 5 ms 8192 KB OK (n = 1, answer = NO)
3 Correct 5 ms 8192 KB OK (n = 1, answer = YES)
4 Correct 5 ms 8192 KB OK (n = 2, answer = YES)
5 Correct 5 ms 8192 KB OK (n = 2, answer = YES)
6 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
7 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
8 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
9 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
10 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
11 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
12 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
13 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
14 Correct 5 ms 8320 KB OK (n = 3, answer = YES)
15 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
16 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
17 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
18 Correct 6 ms 8192 KB OK (n = 100, answer = NO)
19 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
20 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
21 Correct 6 ms 8192 KB OK (n = 12, answer = YES)
22 Correct 5 ms 8192 KB OK (n = 12, answer = NO)
23 Correct 5 ms 8192 KB OK (n = 12, answer = NO)
24 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
25 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
26 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
27 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
28 Correct 5 ms 8192 KB OK (n = 6, answer = YES)
29 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
30 Correct 5 ms 8320 KB OK (n = 100, answer = NO)
31 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
32 Correct 5 ms 8192 KB OK (n = 100, answer = NO)
33 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
34 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
35 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
36 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
37 Correct 6 ms 8192 KB OK (n = 28, answer = YES)
38 Correct 6 ms 8192 KB OK (n = 27, answer = YES)
39 Correct 6 ms 8320 KB OK (n = 90, answer = YES)
40 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
41 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
42 Correct 5 ms 8192 KB OK (n = 10, answer = YES)
43 Correct 6 ms 8192 KB OK (n = 100, answer = YES)
44 Correct 6 ms 8192 KB OK (n = 100, answer = YES)
45 Correct 5 ms 8320 KB OK (n = 100, answer = YES)
46 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
47 Correct 6 ms 8192 KB OK (n = 100, answer = NO)
48 Correct 5 ms 8192 KB OK (n = 100, answer = NO)
49 Correct 5 ms 8192 KB OK (n = 100, answer = NO)
50 Correct 7 ms 8192 KB OK (n = 100, answer = YES)
51 Correct 7 ms 8192 KB OK (n = 100, answer = YES)
52 Correct 7 ms 8192 KB OK (n = 100, answer = YES)
53 Correct 5 ms 8320 KB OK (n = 100, answer = YES)
54 Correct 6 ms 8192 KB OK (n = 100, answer = YES)
# Verdict Execution time Memory Grader output
1 Correct 5 ms 8192 KB OK (n = 1, answer = NO)
2 Correct 5 ms 8192 KB OK (n = 1, answer = NO)
3 Correct 5 ms 8192 KB OK (n = 1, answer = YES)
4 Correct 5 ms 8192 KB OK (n = 2, answer = YES)
5 Correct 5 ms 8192 KB OK (n = 2, answer = YES)
6 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
7 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
8 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
9 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
10 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
11 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
12 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
13 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
14 Correct 5 ms 8320 KB OK (n = 3, answer = YES)
15 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
16 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
17 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
18 Correct 6 ms 8192 KB OK (n = 100, answer = NO)
19 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
20 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
21 Correct 6 ms 8192 KB OK (n = 12, answer = YES)
22 Correct 5 ms 8192 KB OK (n = 12, answer = NO)
23 Correct 5 ms 8192 KB OK (n = 12, answer = NO)
24 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
25 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
26 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
27 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
28 Correct 5 ms 8192 KB OK (n = 6, answer = YES)
29 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
30 Correct 5 ms 8320 KB OK (n = 100, answer = NO)
31 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
32 Correct 5 ms 8192 KB OK (n = 100, answer = NO)
33 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
34 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
35 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
36 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
37 Correct 6 ms 8192 KB OK (n = 28, answer = YES)
38 Correct 6 ms 8192 KB OK (n = 27, answer = YES)
39 Correct 6 ms 8320 KB OK (n = 90, answer = YES)
40 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
41 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
42 Correct 5 ms 8192 KB OK (n = 10, answer = YES)
43 Correct 6 ms 8192 KB OK (n = 100, answer = YES)
44 Correct 6 ms 8192 KB OK (n = 100, answer = YES)
45 Correct 5 ms 8320 KB OK (n = 100, answer = YES)
46 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
47 Correct 6 ms 8192 KB OK (n = 100, answer = NO)
48 Correct 5 ms 8192 KB OK (n = 100, answer = NO)
49 Correct 5 ms 8192 KB OK (n = 100, answer = NO)
50 Correct 7 ms 8192 KB OK (n = 100, answer = YES)
51 Correct 7 ms 8192 KB OK (n = 100, answer = YES)
52 Correct 7 ms 8192 KB OK (n = 100, answer = YES)
53 Correct 5 ms 8320 KB OK (n = 100, answer = YES)
54 Correct 6 ms 8192 KB OK (n = 100, answer = YES)
55 Incorrect 19 ms 8320 KB Contestant can not find answer, jury can
56 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 5 ms 8192 KB OK (n = 1, answer = NO)
2 Correct 5 ms 8192 KB OK (n = 1, answer = NO)
3 Correct 5 ms 8192 KB OK (n = 1, answer = YES)
4 Correct 5 ms 8192 KB OK (n = 2, answer = YES)
5 Correct 5 ms 8192 KB OK (n = 2, answer = YES)
6 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
7 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
8 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
9 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
10 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
11 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
12 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
13 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
14 Correct 5 ms 8320 KB OK (n = 3, answer = YES)
15 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
16 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
17 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
18 Correct 6 ms 8192 KB OK (n = 100, answer = NO)
19 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
20 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
21 Correct 6 ms 8192 KB OK (n = 12, answer = YES)
22 Correct 5 ms 8192 KB OK (n = 12, answer = NO)
23 Correct 5 ms 8192 KB OK (n = 12, answer = NO)
24 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
25 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
26 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
27 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
28 Correct 5 ms 8192 KB OK (n = 6, answer = YES)
29 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
30 Correct 5 ms 8320 KB OK (n = 100, answer = NO)
31 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
32 Correct 5 ms 8192 KB OK (n = 100, answer = NO)
33 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
34 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
35 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
36 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
37 Correct 6 ms 8192 KB OK (n = 28, answer = YES)
38 Correct 6 ms 8192 KB OK (n = 27, answer = YES)
39 Correct 6 ms 8320 KB OK (n = 90, answer = YES)
40 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
41 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
42 Correct 5 ms 8192 KB OK (n = 10, answer = YES)
43 Correct 6 ms 8192 KB OK (n = 100, answer = YES)
44 Correct 6 ms 8192 KB OK (n = 100, answer = YES)
45 Correct 5 ms 8320 KB OK (n = 100, answer = YES)
46 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
47 Correct 6 ms 8192 KB OK (n = 100, answer = NO)
48 Correct 5 ms 8192 KB OK (n = 100, answer = NO)
49 Correct 5 ms 8192 KB OK (n = 100, answer = NO)
50 Correct 7 ms 8192 KB OK (n = 100, answer = YES)
51 Correct 7 ms 8192 KB OK (n = 100, answer = YES)
52 Correct 7 ms 8192 KB OK (n = 100, answer = YES)
53 Correct 5 ms 8320 KB OK (n = 100, answer = YES)
54 Correct 6 ms 8192 KB OK (n = 100, answer = YES)
55 Incorrect 19 ms 8320 KB Contestant can not find answer, jury can
56 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 5 ms 8192 KB OK (n = 1, answer = NO)
2 Correct 5 ms 8192 KB OK (n = 1, answer = NO)
3 Correct 5 ms 8192 KB OK (n = 1, answer = YES)
4 Correct 5 ms 8192 KB OK (n = 2, answer = YES)
5 Correct 5 ms 8192 KB OK (n = 2, answer = YES)
6 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
7 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
8 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
9 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
10 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
11 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
12 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
13 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
14 Correct 5 ms 8320 KB OK (n = 3, answer = YES)
15 Correct 5 ms 8192 KB OK (n = 3, answer = YES)
16 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
17 Correct 5 ms 8192 KB OK (n = 3, answer = NO)
18 Correct 6 ms 8192 KB OK (n = 100, answer = NO)
19 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
20 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
21 Correct 6 ms 8192 KB OK (n = 12, answer = YES)
22 Correct 5 ms 8192 KB OK (n = 12, answer = NO)
23 Correct 5 ms 8192 KB OK (n = 12, answer = NO)
24 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
25 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
26 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
27 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
28 Correct 5 ms 8192 KB OK (n = 6, answer = YES)
29 Correct 5 ms 8192 KB OK (n = 12, answer = YES)
30 Correct 5 ms 8320 KB OK (n = 100, answer = NO)
31 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
32 Correct 5 ms 8192 KB OK (n = 100, answer = NO)
33 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
34 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
35 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
36 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
37 Correct 6 ms 8192 KB OK (n = 28, answer = YES)
38 Correct 6 ms 8192 KB OK (n = 27, answer = YES)
39 Correct 6 ms 8320 KB OK (n = 90, answer = YES)
40 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
41 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
42 Correct 5 ms 8192 KB OK (n = 10, answer = YES)
43 Correct 6 ms 8192 KB OK (n = 100, answer = YES)
44 Correct 6 ms 8192 KB OK (n = 100, answer = YES)
45 Correct 5 ms 8320 KB OK (n = 100, answer = YES)
46 Correct 5 ms 8192 KB OK (n = 100, answer = YES)
47 Correct 6 ms 8192 KB OK (n = 100, answer = NO)
48 Correct 5 ms 8192 KB OK (n = 100, answer = NO)
49 Correct 5 ms 8192 KB OK (n = 100, answer = NO)
50 Correct 7 ms 8192 KB OK (n = 100, answer = YES)
51 Correct 7 ms 8192 KB OK (n = 100, answer = YES)
52 Correct 7 ms 8192 KB OK (n = 100, answer = YES)
53 Correct 5 ms 8320 KB OK (n = 100, answer = YES)
54 Correct 6 ms 8192 KB OK (n = 100, answer = YES)
55 Incorrect 19 ms 8320 KB Contestant can not find answer, jury can
56 Halted 0 ms 0 KB -