Submission #265598

# Submission time Handle Problem Language Result Execution time Memory
265598 2020-08-15T03:11:01 Z cjoa Detecting Molecules (IOI16_molecules) C++11
46 / 100
880 ms 65540 KB
#include "molecules.h"

#include <iostream>
#include <vector>
#include <map>
#include <cassert>

using namespace std;

typedef vector<bool> VI;
typedef vector<VI> VVI;

std::vector<int> find_subset(int l, int u, std::vector<int> w) {
   const int N = w.size();
// assert(N <= 100 && u <= 1000);

   VVI can(N+1, VI(u+1));
   VVI P(N+1, VI(u+1));
   can[0][0] = true;
   for (int n = 0; n < N; ++n) {
      for (int sum = 0; sum <= u; ++sum) {
         if ( can[n][sum] ) {
            can[n+1][sum] = true;
            P[n+1][sum] = false;
            if (sum + w[n] <= u) {
               can[n+1][sum + w[n]] = true;
               P[n+1][sum + w[n]] = true;
            }
         }
      }
   }

   for (int sum = l; sum <= u; ++sum) {
      if (can[N][sum]) {
         vector<int> res;
         for (int n = N, s = sum; s != 0; ) {
            if (P[n][s]) {
               res.push_back(n-1);
               s -= w[n-1];
               --n;
            }
            else {
               --n;
            }
         }
         return res;
      }
   }

   return {};
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB OK (n = 1, answer = NO)
2 Correct 0 ms 256 KB OK (n = 1, answer = NO)
3 Correct 0 ms 256 KB OK (n = 1, answer = YES)
4 Correct 0 ms 256 KB OK (n = 2, answer = YES)
5 Correct 1 ms 256 KB OK (n = 2, answer = YES)
6 Correct 0 ms 256 KB OK (n = 3, answer = YES)
7 Correct 0 ms 256 KB OK (n = 3, answer = YES)
8 Correct 0 ms 256 KB OK (n = 3, answer = YES)
9 Correct 0 ms 256 KB OK (n = 3, answer = YES)
10 Correct 1 ms 256 KB OK (n = 3, answer = YES)
11 Correct 1 ms 256 KB OK (n = 3, answer = YES)
12 Correct 1 ms 384 KB OK (n = 3, answer = YES)
13 Correct 0 ms 256 KB OK (n = 3, answer = NO)
14 Correct 0 ms 256 KB OK (n = 3, answer = YES)
15 Correct 0 ms 256 KB OK (n = 3, answer = YES)
16 Correct 0 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 1 ms 384 KB OK (n = 100, answer = NO)
19 Correct 0 ms 256 KB OK (n = 100, answer = YES)
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB OK (n = 12, answer = YES)
2 Correct 0 ms 256 KB OK (n = 12, answer = YES)
3 Correct 0 ms 256 KB OK (n = 12, answer = NO)
4 Correct 0 ms 256 KB OK (n = 12, answer = NO)
5 Correct 1 ms 256 KB OK (n = 12, answer = YES)
6 Correct 1 ms 256 KB OK (n = 12, answer = YES)
7 Correct 1 ms 256 KB OK (n = 12, answer = YES)
8 Correct 1 ms 256 KB OK (n = 12, answer = YES)
9 Correct 0 ms 256 KB OK (n = 6, answer = YES)
10 Correct 1 ms 256 KB OK (n = 12, answer = YES)
11 Correct 1 ms 256 KB OK (n = 100, answer = NO)
12 Correct 1 ms 384 KB OK (n = 100, answer = YES)
13 Correct 1 ms 384 KB OK (n = 100, answer = NO)
14 Correct 1 ms 384 KB OK (n = 100, answer = YES)
15 Correct 1 ms 384 KB OK (n = 100, answer = YES)
16 Correct 1 ms 384 KB OK (n = 100, answer = YES)
17 Correct 1 ms 384 KB OK (n = 100, answer = YES)
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB OK (n = 1, answer = NO)
2 Correct 0 ms 256 KB OK (n = 1, answer = NO)
3 Correct 0 ms 256 KB OK (n = 1, answer = YES)
4 Correct 0 ms 256 KB OK (n = 2, answer = YES)
5 Correct 1 ms 256 KB OK (n = 2, answer = YES)
6 Correct 0 ms 256 KB OK (n = 3, answer = YES)
7 Correct 0 ms 256 KB OK (n = 3, answer = YES)
8 Correct 0 ms 256 KB OK (n = 3, answer = YES)
9 Correct 0 ms 256 KB OK (n = 3, answer = YES)
10 Correct 1 ms 256 KB OK (n = 3, answer = YES)
11 Correct 1 ms 256 KB OK (n = 3, answer = YES)
12 Correct 1 ms 384 KB OK (n = 3, answer = YES)
13 Correct 0 ms 256 KB OK (n = 3, answer = NO)
14 Correct 0 ms 256 KB OK (n = 3, answer = YES)
15 Correct 0 ms 256 KB OK (n = 3, answer = YES)
16 Correct 0 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 1 ms 384 KB OK (n = 100, answer = NO)
19 Correct 0 ms 256 KB OK (n = 100, answer = YES)
20 Correct 1 ms 256 KB OK (n = 12, answer = YES)
21 Correct 0 ms 256 KB OK (n = 12, answer = YES)
22 Correct 0 ms 256 KB OK (n = 12, answer = NO)
23 Correct 0 ms 256 KB OK (n = 12, answer = NO)
24 Correct 1 ms 256 KB OK (n = 12, answer = YES)
25 Correct 1 ms 256 KB OK (n = 12, answer = YES)
26 Correct 1 ms 256 KB OK (n = 12, answer = YES)
27 Correct 1 ms 256 KB OK (n = 12, answer = YES)
28 Correct 0 ms 256 KB OK (n = 6, answer = YES)
29 Correct 1 ms 256 KB OK (n = 12, answer = YES)
30 Correct 1 ms 256 KB OK (n = 100, answer = NO)
31 Correct 1 ms 384 KB OK (n = 100, answer = YES)
32 Correct 1 ms 384 KB OK (n = 100, answer = NO)
33 Correct 1 ms 384 KB OK (n = 100, answer = YES)
34 Correct 1 ms 384 KB OK (n = 100, answer = YES)
35 Correct 1 ms 384 KB OK (n = 100, answer = YES)
36 Correct 1 ms 384 KB OK (n = 100, answer = YES)
37 Correct 0 ms 256 KB OK (n = 28, answer = YES)
38 Correct 1 ms 256 KB OK (n = 27, answer = YES)
39 Correct 1 ms 384 KB OK (n = 90, answer = YES)
40 Correct 2 ms 384 KB OK (n = 100, answer = YES)
41 Correct 1 ms 384 KB OK (n = 100, answer = YES)
42 Correct 0 ms 256 KB OK (n = 10, answer = YES)
43 Correct 1 ms 384 KB OK (n = 100, answer = YES)
44 Correct 1 ms 384 KB OK (n = 100, answer = YES)
45 Correct 1 ms 384 KB OK (n = 100, answer = YES)
46 Correct 1 ms 384 KB OK (n = 100, answer = YES)
47 Correct 1 ms 384 KB OK (n = 100, answer = NO)
48 Correct 1 ms 384 KB OK (n = 100, answer = NO)
49 Correct 1 ms 384 KB OK (n = 100, answer = NO)
50 Correct 1 ms 384 KB OK (n = 100, answer = YES)
51 Correct 1 ms 384 KB OK (n = 100, answer = YES)
52 Correct 1 ms 384 KB OK (n = 100, answer = YES)
53 Correct 1 ms 256 KB OK (n = 100, answer = YES)
54 Correct 1 ms 384 KB OK (n = 100, answer = YES)
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB OK (n = 1, answer = NO)
2 Correct 0 ms 256 KB OK (n = 1, answer = NO)
3 Correct 0 ms 256 KB OK (n = 1, answer = YES)
4 Correct 0 ms 256 KB OK (n = 2, answer = YES)
5 Correct 1 ms 256 KB OK (n = 2, answer = YES)
6 Correct 0 ms 256 KB OK (n = 3, answer = YES)
7 Correct 0 ms 256 KB OK (n = 3, answer = YES)
8 Correct 0 ms 256 KB OK (n = 3, answer = YES)
9 Correct 0 ms 256 KB OK (n = 3, answer = YES)
10 Correct 1 ms 256 KB OK (n = 3, answer = YES)
11 Correct 1 ms 256 KB OK (n = 3, answer = YES)
12 Correct 1 ms 384 KB OK (n = 3, answer = YES)
13 Correct 0 ms 256 KB OK (n = 3, answer = NO)
14 Correct 0 ms 256 KB OK (n = 3, answer = YES)
15 Correct 0 ms 256 KB OK (n = 3, answer = YES)
16 Correct 0 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 1 ms 384 KB OK (n = 100, answer = NO)
19 Correct 0 ms 256 KB OK (n = 100, answer = YES)
20 Correct 1 ms 256 KB OK (n = 12, answer = YES)
21 Correct 0 ms 256 KB OK (n = 12, answer = YES)
22 Correct 0 ms 256 KB OK (n = 12, answer = NO)
23 Correct 0 ms 256 KB OK (n = 12, answer = NO)
24 Correct 1 ms 256 KB OK (n = 12, answer = YES)
25 Correct 1 ms 256 KB OK (n = 12, answer = YES)
26 Correct 1 ms 256 KB OK (n = 12, answer = YES)
27 Correct 1 ms 256 KB OK (n = 12, answer = YES)
28 Correct 0 ms 256 KB OK (n = 6, answer = YES)
29 Correct 1 ms 256 KB OK (n = 12, answer = YES)
30 Correct 1 ms 256 KB OK (n = 100, answer = NO)
31 Correct 1 ms 384 KB OK (n = 100, answer = YES)
32 Correct 1 ms 384 KB OK (n = 100, answer = NO)
33 Correct 1 ms 384 KB OK (n = 100, answer = YES)
34 Correct 1 ms 384 KB OK (n = 100, answer = YES)
35 Correct 1 ms 384 KB OK (n = 100, answer = YES)
36 Correct 1 ms 384 KB OK (n = 100, answer = YES)
37 Correct 0 ms 256 KB OK (n = 28, answer = YES)
38 Correct 1 ms 256 KB OK (n = 27, answer = YES)
39 Correct 1 ms 384 KB OK (n = 90, answer = YES)
40 Correct 2 ms 384 KB OK (n = 100, answer = YES)
41 Correct 1 ms 384 KB OK (n = 100, answer = YES)
42 Correct 0 ms 256 KB OK (n = 10, answer = YES)
43 Correct 1 ms 384 KB OK (n = 100, answer = YES)
44 Correct 1 ms 384 KB OK (n = 100, answer = YES)
45 Correct 1 ms 384 KB OK (n = 100, answer = YES)
46 Correct 1 ms 384 KB OK (n = 100, answer = YES)
47 Correct 1 ms 384 KB OK (n = 100, answer = NO)
48 Correct 1 ms 384 KB OK (n = 100, answer = NO)
49 Correct 1 ms 384 KB OK (n = 100, answer = NO)
50 Correct 1 ms 384 KB OK (n = 100, answer = YES)
51 Correct 1 ms 384 KB OK (n = 100, answer = YES)
52 Correct 1 ms 384 KB OK (n = 100, answer = YES)
53 Correct 1 ms 256 KB OK (n = 100, answer = YES)
54 Correct 1 ms 384 KB OK (n = 100, answer = YES)
55 Correct 867 ms 25976 KB OK (n = 10000, answer = YES)
56 Correct 842 ms 25972 KB OK (n = 10000, answer = YES)
57 Correct 204 ms 25984 KB OK (n = 10000, answer = YES)
58 Correct 213 ms 25856 KB OK (n = 10000, answer = YES)
59 Correct 880 ms 25856 KB OK (n = 10000, answer = YES)
60 Correct 95 ms 13696 KB OK (n = 10000, answer = YES)
61 Correct 108 ms 13816 KB OK (n = 10000, answer = NO)
62 Correct 745 ms 25984 KB OK (n = 10000, answer = YES)
63 Correct 91 ms 13760 KB OK (n = 10000, answer = NO)
64 Correct 865 ms 25976 KB OK (n = 10000, answer = YES)
65 Correct 862 ms 26080 KB OK (n = 10000, answer = YES)
66 Correct 634 ms 24704 KB OK (n = 10000, answer = YES)
67 Correct 34 ms 3072 KB OK (n = 10000, answer = YES)
68 Correct 27 ms 3072 KB OK (n = 10000, answer = YES)
69 Correct 227 ms 18688 KB OK (n = 10000, answer = YES)
70 Correct 223 ms 18688 KB OK (n = 10000, answer = YES)
71 Correct 237 ms 18688 KB OK (n = 10000, answer = YES)
72 Correct 37 ms 2432 KB OK (n = 865, answer = YES)
73 Correct 38 ms 2304 KB OK (n = 820, answer = YES)
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB OK (n = 1, answer = NO)
2 Correct 0 ms 256 KB OK (n = 1, answer = NO)
3 Correct 0 ms 256 KB OK (n = 1, answer = YES)
4 Correct 0 ms 256 KB OK (n = 2, answer = YES)
5 Correct 1 ms 256 KB OK (n = 2, answer = YES)
6 Correct 0 ms 256 KB OK (n = 3, answer = YES)
7 Correct 0 ms 256 KB OK (n = 3, answer = YES)
8 Correct 0 ms 256 KB OK (n = 3, answer = YES)
9 Correct 0 ms 256 KB OK (n = 3, answer = YES)
10 Correct 1 ms 256 KB OK (n = 3, answer = YES)
11 Correct 1 ms 256 KB OK (n = 3, answer = YES)
12 Correct 1 ms 384 KB OK (n = 3, answer = YES)
13 Correct 0 ms 256 KB OK (n = 3, answer = NO)
14 Correct 0 ms 256 KB OK (n = 3, answer = YES)
15 Correct 0 ms 256 KB OK (n = 3, answer = YES)
16 Correct 0 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 1 ms 384 KB OK (n = 100, answer = NO)
19 Correct 0 ms 256 KB OK (n = 100, answer = YES)
20 Correct 1 ms 256 KB OK (n = 12, answer = YES)
21 Correct 0 ms 256 KB OK (n = 12, answer = YES)
22 Correct 0 ms 256 KB OK (n = 12, answer = NO)
23 Correct 0 ms 256 KB OK (n = 12, answer = NO)
24 Correct 1 ms 256 KB OK (n = 12, answer = YES)
25 Correct 1 ms 256 KB OK (n = 12, answer = YES)
26 Correct 1 ms 256 KB OK (n = 12, answer = YES)
27 Correct 1 ms 256 KB OK (n = 12, answer = YES)
28 Correct 0 ms 256 KB OK (n = 6, answer = YES)
29 Correct 1 ms 256 KB OK (n = 12, answer = YES)
30 Correct 1 ms 256 KB OK (n = 100, answer = NO)
31 Correct 1 ms 384 KB OK (n = 100, answer = YES)
32 Correct 1 ms 384 KB OK (n = 100, answer = NO)
33 Correct 1 ms 384 KB OK (n = 100, answer = YES)
34 Correct 1 ms 384 KB OK (n = 100, answer = YES)
35 Correct 1 ms 384 KB OK (n = 100, answer = YES)
36 Correct 1 ms 384 KB OK (n = 100, answer = YES)
37 Correct 0 ms 256 KB OK (n = 28, answer = YES)
38 Correct 1 ms 256 KB OK (n = 27, answer = YES)
39 Correct 1 ms 384 KB OK (n = 90, answer = YES)
40 Correct 2 ms 384 KB OK (n = 100, answer = YES)
41 Correct 1 ms 384 KB OK (n = 100, answer = YES)
42 Correct 0 ms 256 KB OK (n = 10, answer = YES)
43 Correct 1 ms 384 KB OK (n = 100, answer = YES)
44 Correct 1 ms 384 KB OK (n = 100, answer = YES)
45 Correct 1 ms 384 KB OK (n = 100, answer = YES)
46 Correct 1 ms 384 KB OK (n = 100, answer = YES)
47 Correct 1 ms 384 KB OK (n = 100, answer = NO)
48 Correct 1 ms 384 KB OK (n = 100, answer = NO)
49 Correct 1 ms 384 KB OK (n = 100, answer = NO)
50 Correct 1 ms 384 KB OK (n = 100, answer = YES)
51 Correct 1 ms 384 KB OK (n = 100, answer = YES)
52 Correct 1 ms 384 KB OK (n = 100, answer = YES)
53 Correct 1 ms 256 KB OK (n = 100, answer = YES)
54 Correct 1 ms 384 KB OK (n = 100, answer = YES)
55 Correct 867 ms 25976 KB OK (n = 10000, answer = YES)
56 Correct 842 ms 25972 KB OK (n = 10000, answer = YES)
57 Correct 204 ms 25984 KB OK (n = 10000, answer = YES)
58 Correct 213 ms 25856 KB OK (n = 10000, answer = YES)
59 Correct 880 ms 25856 KB OK (n = 10000, answer = YES)
60 Correct 95 ms 13696 KB OK (n = 10000, answer = YES)
61 Correct 108 ms 13816 KB OK (n = 10000, answer = NO)
62 Correct 745 ms 25984 KB OK (n = 10000, answer = YES)
63 Correct 91 ms 13760 KB OK (n = 10000, answer = NO)
64 Correct 865 ms 25976 KB OK (n = 10000, answer = YES)
65 Correct 862 ms 26080 KB OK (n = 10000, answer = YES)
66 Correct 634 ms 24704 KB OK (n = 10000, answer = YES)
67 Correct 34 ms 3072 KB OK (n = 10000, answer = YES)
68 Correct 27 ms 3072 KB OK (n = 10000, answer = YES)
69 Correct 227 ms 18688 KB OK (n = 10000, answer = YES)
70 Correct 223 ms 18688 KB OK (n = 10000, answer = YES)
71 Correct 237 ms 18688 KB OK (n = 10000, answer = YES)
72 Correct 37 ms 2432 KB OK (n = 865, answer = YES)
73 Correct 38 ms 2304 KB OK (n = 820, answer = YES)
74 Runtime error 47 ms 65540 KB Execution killed with signal 9
75 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB OK (n = 1, answer = NO)
2 Correct 0 ms 256 KB OK (n = 1, answer = NO)
3 Correct 0 ms 256 KB OK (n = 1, answer = YES)
4 Correct 0 ms 256 KB OK (n = 2, answer = YES)
5 Correct 1 ms 256 KB OK (n = 2, answer = YES)
6 Correct 0 ms 256 KB OK (n = 3, answer = YES)
7 Correct 0 ms 256 KB OK (n = 3, answer = YES)
8 Correct 0 ms 256 KB OK (n = 3, answer = YES)
9 Correct 0 ms 256 KB OK (n = 3, answer = YES)
10 Correct 1 ms 256 KB OK (n = 3, answer = YES)
11 Correct 1 ms 256 KB OK (n = 3, answer = YES)
12 Correct 1 ms 384 KB OK (n = 3, answer = YES)
13 Correct 0 ms 256 KB OK (n = 3, answer = NO)
14 Correct 0 ms 256 KB OK (n = 3, answer = YES)
15 Correct 0 ms 256 KB OK (n = 3, answer = YES)
16 Correct 0 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 1 ms 384 KB OK (n = 100, answer = NO)
19 Correct 0 ms 256 KB OK (n = 100, answer = YES)
20 Correct 1 ms 256 KB OK (n = 12, answer = YES)
21 Correct 0 ms 256 KB OK (n = 12, answer = YES)
22 Correct 0 ms 256 KB OK (n = 12, answer = NO)
23 Correct 0 ms 256 KB OK (n = 12, answer = NO)
24 Correct 1 ms 256 KB OK (n = 12, answer = YES)
25 Correct 1 ms 256 KB OK (n = 12, answer = YES)
26 Correct 1 ms 256 KB OK (n = 12, answer = YES)
27 Correct 1 ms 256 KB OK (n = 12, answer = YES)
28 Correct 0 ms 256 KB OK (n = 6, answer = YES)
29 Correct 1 ms 256 KB OK (n = 12, answer = YES)
30 Correct 1 ms 256 KB OK (n = 100, answer = NO)
31 Correct 1 ms 384 KB OK (n = 100, answer = YES)
32 Correct 1 ms 384 KB OK (n = 100, answer = NO)
33 Correct 1 ms 384 KB OK (n = 100, answer = YES)
34 Correct 1 ms 384 KB OK (n = 100, answer = YES)
35 Correct 1 ms 384 KB OK (n = 100, answer = YES)
36 Correct 1 ms 384 KB OK (n = 100, answer = YES)
37 Correct 0 ms 256 KB OK (n = 28, answer = YES)
38 Correct 1 ms 256 KB OK (n = 27, answer = YES)
39 Correct 1 ms 384 KB OK (n = 90, answer = YES)
40 Correct 2 ms 384 KB OK (n = 100, answer = YES)
41 Correct 1 ms 384 KB OK (n = 100, answer = YES)
42 Correct 0 ms 256 KB OK (n = 10, answer = YES)
43 Correct 1 ms 384 KB OK (n = 100, answer = YES)
44 Correct 1 ms 384 KB OK (n = 100, answer = YES)
45 Correct 1 ms 384 KB OK (n = 100, answer = YES)
46 Correct 1 ms 384 KB OK (n = 100, answer = YES)
47 Correct 1 ms 384 KB OK (n = 100, answer = NO)
48 Correct 1 ms 384 KB OK (n = 100, answer = NO)
49 Correct 1 ms 384 KB OK (n = 100, answer = NO)
50 Correct 1 ms 384 KB OK (n = 100, answer = YES)
51 Correct 1 ms 384 KB OK (n = 100, answer = YES)
52 Correct 1 ms 384 KB OK (n = 100, answer = YES)
53 Correct 1 ms 256 KB OK (n = 100, answer = YES)
54 Correct 1 ms 384 KB OK (n = 100, answer = YES)
55 Correct 867 ms 25976 KB OK (n = 10000, answer = YES)
56 Correct 842 ms 25972 KB OK (n = 10000, answer = YES)
57 Correct 204 ms 25984 KB OK (n = 10000, answer = YES)
58 Correct 213 ms 25856 KB OK (n = 10000, answer = YES)
59 Correct 880 ms 25856 KB OK (n = 10000, answer = YES)
60 Correct 95 ms 13696 KB OK (n = 10000, answer = YES)
61 Correct 108 ms 13816 KB OK (n = 10000, answer = NO)
62 Correct 745 ms 25984 KB OK (n = 10000, answer = YES)
63 Correct 91 ms 13760 KB OK (n = 10000, answer = NO)
64 Correct 865 ms 25976 KB OK (n = 10000, answer = YES)
65 Correct 862 ms 26080 KB OK (n = 10000, answer = YES)
66 Correct 634 ms 24704 KB OK (n = 10000, answer = YES)
67 Correct 34 ms 3072 KB OK (n = 10000, answer = YES)
68 Correct 27 ms 3072 KB OK (n = 10000, answer = YES)
69 Correct 227 ms 18688 KB OK (n = 10000, answer = YES)
70 Correct 223 ms 18688 KB OK (n = 10000, answer = YES)
71 Correct 237 ms 18688 KB OK (n = 10000, answer = YES)
72 Correct 37 ms 2432 KB OK (n = 865, answer = YES)
73 Correct 38 ms 2304 KB OK (n = 820, answer = YES)
74 Runtime error 47 ms 65540 KB Execution killed with signal 9
75 Halted 0 ms 0 KB -