Submission #265605

# Submission time Handle Problem Language Result Execution time Memory
265605 2020-08-15T03:33:56 Z amalla Detecting Molecules (IOI16_molecules) C++17
31 / 100
1000 ms 51064 KB
#include "molecules.h"
#include<bits/stdc++.h>

using namespace std;

#define ll long long
int N, L, U;
vector<int> W;
bitset<10000> INF;
bitset<10000> memo[10000];
bool vis[10000] = {0};

bitset<10000> DP(int i, int sum, bitset<10000> choosen) {
    if (sum>U) return INF;
    if (sum>=L) return choosen;
    if (i == N) return INF;
    if (vis[sum]) return memo[sum];
    
    bitset<10000> res1, res2, res;
    choosen[i] = 1;
    res1 = DP(i+1, sum + W[i], choosen);
    choosen[i] = 0;
    res2 = DP(i+1, sum, choosen);

    if (res1.count()>res2.count()) res = res1;
    else res = res2;

    memo[sum] = res;
    vis[sum] = true;
    return memo[sum];
}

vector<int> find_subset(int l, int u, vector<int> w) {
    N = w.size(); L = l; U = u; W = w;
    bitset<10000> res = DP(0,0, INF);
    vector<int> Ans(res.count());
    for (int i = 0, j = 0; i<N; ++i) {
        if (res[i]) {
            Ans[j] = i;
            ++j;
        }
    }
    return Ans;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB OK (n = 1, answer = NO)
2 Correct 1 ms 384 KB OK (n = 1, answer = NO)
3 Correct 0 ms 384 KB OK (n = 1, answer = YES)
4 Correct 1 ms 288 KB OK (n = 2, answer = YES)
5 Correct 1 ms 384 KB OK (n = 2, answer = YES)
6 Correct 1 ms 384 KB OK (n = 3, answer = YES)
7 Correct 1 ms 384 KB OK (n = 3, answer = YES)
8 Correct 0 ms 384 KB OK (n = 3, answer = YES)
9 Correct 0 ms 384 KB OK (n = 3, answer = YES)
10 Correct 0 ms 384 KB OK (n = 3, answer = YES)
11 Correct 0 ms 384 KB OK (n = 3, answer = YES)
12 Correct 0 ms 384 KB OK (n = 3, answer = YES)
13 Correct 1 ms 384 KB OK (n = 3, answer = NO)
14 Correct 0 ms 384 KB OK (n = 3, answer = YES)
15 Correct 1 ms 384 KB OK (n = 3, answer = YES)
16 Correct 0 ms 384 KB OK (n = 3, answer = NO)
17 Correct 1 ms 384 KB OK (n = 3, answer = NO)
18 Correct 2 ms 896 KB OK (n = 100, answer = NO)
19 Correct 8 ms 1024 KB OK (n = 100, answer = YES)
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB OK (n = 12, answer = YES)
2 Correct 1 ms 384 KB OK (n = 12, answer = YES)
3 Correct 1 ms 384 KB OK (n = 12, answer = NO)
4 Correct 1 ms 384 KB OK (n = 12, answer = NO)
5 Correct 1 ms 384 KB OK (n = 12, answer = YES)
6 Correct 1 ms 384 KB OK (n = 12, answer = YES)
7 Correct 1 ms 384 KB OK (n = 12, answer = YES)
8 Correct 1 ms 384 KB OK (n = 12, answer = YES)
9 Correct 1 ms 384 KB OK (n = 6, answer = YES)
10 Correct 1 ms 384 KB OK (n = 12, answer = YES)
11 Correct 8 ms 896 KB OK (n = 100, answer = NO)
12 Correct 7 ms 896 KB OK (n = 100, answer = YES)
13 Correct 12 ms 1024 KB OK (n = 100, answer = NO)
14 Correct 9 ms 896 KB OK (n = 100, answer = YES)
15 Correct 22 ms 1280 KB OK (n = 100, answer = YES)
16 Correct 25 ms 1408 KB OK (n = 100, answer = YES)
17 Correct 23 ms 1400 KB OK (n = 100, answer = YES)
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB OK (n = 1, answer = NO)
2 Correct 1 ms 384 KB OK (n = 1, answer = NO)
3 Correct 0 ms 384 KB OK (n = 1, answer = YES)
4 Correct 1 ms 288 KB OK (n = 2, answer = YES)
5 Correct 1 ms 384 KB OK (n = 2, answer = YES)
6 Correct 1 ms 384 KB OK (n = 3, answer = YES)
7 Correct 1 ms 384 KB OK (n = 3, answer = YES)
8 Correct 0 ms 384 KB OK (n = 3, answer = YES)
9 Correct 0 ms 384 KB OK (n = 3, answer = YES)
10 Correct 0 ms 384 KB OK (n = 3, answer = YES)
11 Correct 0 ms 384 KB OK (n = 3, answer = YES)
12 Correct 0 ms 384 KB OK (n = 3, answer = YES)
13 Correct 1 ms 384 KB OK (n = 3, answer = NO)
14 Correct 0 ms 384 KB OK (n = 3, answer = YES)
15 Correct 1 ms 384 KB OK (n = 3, answer = YES)
16 Correct 0 ms 384 KB OK (n = 3, answer = NO)
17 Correct 1 ms 384 KB OK (n = 3, answer = NO)
18 Correct 2 ms 896 KB OK (n = 100, answer = NO)
19 Correct 8 ms 1024 KB OK (n = 100, answer = YES)
20 Correct 1 ms 384 KB OK (n = 12, answer = YES)
21 Correct 1 ms 384 KB OK (n = 12, answer = YES)
22 Correct 1 ms 384 KB OK (n = 12, answer = NO)
23 Correct 1 ms 384 KB OK (n = 12, answer = NO)
24 Correct 1 ms 384 KB OK (n = 12, answer = YES)
25 Correct 1 ms 384 KB OK (n = 12, answer = YES)
26 Correct 1 ms 384 KB OK (n = 12, answer = YES)
27 Correct 1 ms 384 KB OK (n = 12, answer = YES)
28 Correct 1 ms 384 KB OK (n = 6, answer = YES)
29 Correct 1 ms 384 KB OK (n = 12, answer = YES)
30 Correct 8 ms 896 KB OK (n = 100, answer = NO)
31 Correct 7 ms 896 KB OK (n = 100, answer = YES)
32 Correct 12 ms 1024 KB OK (n = 100, answer = NO)
33 Correct 9 ms 896 KB OK (n = 100, answer = YES)
34 Correct 22 ms 1280 KB OK (n = 100, answer = YES)
35 Correct 25 ms 1408 KB OK (n = 100, answer = YES)
36 Correct 23 ms 1400 KB OK (n = 100, answer = YES)
37 Correct 4 ms 768 KB OK (n = 28, answer = YES)
38 Correct 6 ms 896 KB OK (n = 27, answer = YES)
39 Correct 21 ms 1280 KB OK (n = 90, answer = YES)
40 Correct 3 ms 896 KB OK (n = 100, answer = YES)
41 Correct 3 ms 896 KB OK (n = 100, answer = YES)
42 Correct 1 ms 512 KB OK (n = 10, answer = YES)
43 Correct 83 ms 2040 KB OK (n = 100, answer = YES)
44 Correct 50 ms 1332 KB OK (n = 100, answer = YES)
45 Correct 18 ms 1024 KB OK (n = 100, answer = YES)
46 Correct 16 ms 1024 KB OK (n = 100, answer = YES)
47 Correct 56 ms 1912 KB OK (n = 100, answer = NO)
48 Correct 1 ms 768 KB OK (n = 100, answer = NO)
49 Correct 9 ms 1152 KB OK (n = 100, answer = NO)
50 Correct 72 ms 2040 KB OK (n = 100, answer = YES)
51 Correct 77 ms 2040 KB OK (n = 100, answer = YES)
52 Correct 57 ms 1528 KB OK (n = 100, answer = YES)
53 Correct 4 ms 896 KB OK (n = 100, answer = YES)
54 Correct 2 ms 896 KB OK (n = 100, answer = YES)
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB OK (n = 1, answer = NO)
2 Correct 1 ms 384 KB OK (n = 1, answer = NO)
3 Correct 0 ms 384 KB OK (n = 1, answer = YES)
4 Correct 1 ms 288 KB OK (n = 2, answer = YES)
5 Correct 1 ms 384 KB OK (n = 2, answer = YES)
6 Correct 1 ms 384 KB OK (n = 3, answer = YES)
7 Correct 1 ms 384 KB OK (n = 3, answer = YES)
8 Correct 0 ms 384 KB OK (n = 3, answer = YES)
9 Correct 0 ms 384 KB OK (n = 3, answer = YES)
10 Correct 0 ms 384 KB OK (n = 3, answer = YES)
11 Correct 0 ms 384 KB OK (n = 3, answer = YES)
12 Correct 0 ms 384 KB OK (n = 3, answer = YES)
13 Correct 1 ms 384 KB OK (n = 3, answer = NO)
14 Correct 0 ms 384 KB OK (n = 3, answer = YES)
15 Correct 1 ms 384 KB OK (n = 3, answer = YES)
16 Correct 0 ms 384 KB OK (n = 3, answer = NO)
17 Correct 1 ms 384 KB OK (n = 3, answer = NO)
18 Correct 2 ms 896 KB OK (n = 100, answer = NO)
19 Correct 8 ms 1024 KB OK (n = 100, answer = YES)
20 Correct 1 ms 384 KB OK (n = 12, answer = YES)
21 Correct 1 ms 384 KB OK (n = 12, answer = YES)
22 Correct 1 ms 384 KB OK (n = 12, answer = NO)
23 Correct 1 ms 384 KB OK (n = 12, answer = NO)
24 Correct 1 ms 384 KB OK (n = 12, answer = YES)
25 Correct 1 ms 384 KB OK (n = 12, answer = YES)
26 Correct 1 ms 384 KB OK (n = 12, answer = YES)
27 Correct 1 ms 384 KB OK (n = 12, answer = YES)
28 Correct 1 ms 384 KB OK (n = 6, answer = YES)
29 Correct 1 ms 384 KB OK (n = 12, answer = YES)
30 Correct 8 ms 896 KB OK (n = 100, answer = NO)
31 Correct 7 ms 896 KB OK (n = 100, answer = YES)
32 Correct 12 ms 1024 KB OK (n = 100, answer = NO)
33 Correct 9 ms 896 KB OK (n = 100, answer = YES)
34 Correct 22 ms 1280 KB OK (n = 100, answer = YES)
35 Correct 25 ms 1408 KB OK (n = 100, answer = YES)
36 Correct 23 ms 1400 KB OK (n = 100, answer = YES)
37 Correct 4 ms 768 KB OK (n = 28, answer = YES)
38 Correct 6 ms 896 KB OK (n = 27, answer = YES)
39 Correct 21 ms 1280 KB OK (n = 90, answer = YES)
40 Correct 3 ms 896 KB OK (n = 100, answer = YES)
41 Correct 3 ms 896 KB OK (n = 100, answer = YES)
42 Correct 1 ms 512 KB OK (n = 10, answer = YES)
43 Correct 83 ms 2040 KB OK (n = 100, answer = YES)
44 Correct 50 ms 1332 KB OK (n = 100, answer = YES)
45 Correct 18 ms 1024 KB OK (n = 100, answer = YES)
46 Correct 16 ms 1024 KB OK (n = 100, answer = YES)
47 Correct 56 ms 1912 KB OK (n = 100, answer = NO)
48 Correct 1 ms 768 KB OK (n = 100, answer = NO)
49 Correct 9 ms 1152 KB OK (n = 100, answer = NO)
50 Correct 72 ms 2040 KB OK (n = 100, answer = YES)
51 Correct 77 ms 2040 KB OK (n = 100, answer = YES)
52 Correct 57 ms 1528 KB OK (n = 100, answer = YES)
53 Correct 4 ms 896 KB OK (n = 100, answer = YES)
54 Correct 2 ms 896 KB OK (n = 100, answer = YES)
55 Execution timed out 1084 ms 51064 KB Time limit exceeded
56 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB OK (n = 1, answer = NO)
2 Correct 1 ms 384 KB OK (n = 1, answer = NO)
3 Correct 0 ms 384 KB OK (n = 1, answer = YES)
4 Correct 1 ms 288 KB OK (n = 2, answer = YES)
5 Correct 1 ms 384 KB OK (n = 2, answer = YES)
6 Correct 1 ms 384 KB OK (n = 3, answer = YES)
7 Correct 1 ms 384 KB OK (n = 3, answer = YES)
8 Correct 0 ms 384 KB OK (n = 3, answer = YES)
9 Correct 0 ms 384 KB OK (n = 3, answer = YES)
10 Correct 0 ms 384 KB OK (n = 3, answer = YES)
11 Correct 0 ms 384 KB OK (n = 3, answer = YES)
12 Correct 0 ms 384 KB OK (n = 3, answer = YES)
13 Correct 1 ms 384 KB OK (n = 3, answer = NO)
14 Correct 0 ms 384 KB OK (n = 3, answer = YES)
15 Correct 1 ms 384 KB OK (n = 3, answer = YES)
16 Correct 0 ms 384 KB OK (n = 3, answer = NO)
17 Correct 1 ms 384 KB OK (n = 3, answer = NO)
18 Correct 2 ms 896 KB OK (n = 100, answer = NO)
19 Correct 8 ms 1024 KB OK (n = 100, answer = YES)
20 Correct 1 ms 384 KB OK (n = 12, answer = YES)
21 Correct 1 ms 384 KB OK (n = 12, answer = YES)
22 Correct 1 ms 384 KB OK (n = 12, answer = NO)
23 Correct 1 ms 384 KB OK (n = 12, answer = NO)
24 Correct 1 ms 384 KB OK (n = 12, answer = YES)
25 Correct 1 ms 384 KB OK (n = 12, answer = YES)
26 Correct 1 ms 384 KB OK (n = 12, answer = YES)
27 Correct 1 ms 384 KB OK (n = 12, answer = YES)
28 Correct 1 ms 384 KB OK (n = 6, answer = YES)
29 Correct 1 ms 384 KB OK (n = 12, answer = YES)
30 Correct 8 ms 896 KB OK (n = 100, answer = NO)
31 Correct 7 ms 896 KB OK (n = 100, answer = YES)
32 Correct 12 ms 1024 KB OK (n = 100, answer = NO)
33 Correct 9 ms 896 KB OK (n = 100, answer = YES)
34 Correct 22 ms 1280 KB OK (n = 100, answer = YES)
35 Correct 25 ms 1408 KB OK (n = 100, answer = YES)
36 Correct 23 ms 1400 KB OK (n = 100, answer = YES)
37 Correct 4 ms 768 KB OK (n = 28, answer = YES)
38 Correct 6 ms 896 KB OK (n = 27, answer = YES)
39 Correct 21 ms 1280 KB OK (n = 90, answer = YES)
40 Correct 3 ms 896 KB OK (n = 100, answer = YES)
41 Correct 3 ms 896 KB OK (n = 100, answer = YES)
42 Correct 1 ms 512 KB OK (n = 10, answer = YES)
43 Correct 83 ms 2040 KB OK (n = 100, answer = YES)
44 Correct 50 ms 1332 KB OK (n = 100, answer = YES)
45 Correct 18 ms 1024 KB OK (n = 100, answer = YES)
46 Correct 16 ms 1024 KB OK (n = 100, answer = YES)
47 Correct 56 ms 1912 KB OK (n = 100, answer = NO)
48 Correct 1 ms 768 KB OK (n = 100, answer = NO)
49 Correct 9 ms 1152 KB OK (n = 100, answer = NO)
50 Correct 72 ms 2040 KB OK (n = 100, answer = YES)
51 Correct 77 ms 2040 KB OK (n = 100, answer = YES)
52 Correct 57 ms 1528 KB OK (n = 100, answer = YES)
53 Correct 4 ms 896 KB OK (n = 100, answer = YES)
54 Correct 2 ms 896 KB OK (n = 100, answer = YES)
55 Execution timed out 1084 ms 51064 KB Time limit exceeded
56 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB OK (n = 1, answer = NO)
2 Correct 1 ms 384 KB OK (n = 1, answer = NO)
3 Correct 0 ms 384 KB OK (n = 1, answer = YES)
4 Correct 1 ms 288 KB OK (n = 2, answer = YES)
5 Correct 1 ms 384 KB OK (n = 2, answer = YES)
6 Correct 1 ms 384 KB OK (n = 3, answer = YES)
7 Correct 1 ms 384 KB OK (n = 3, answer = YES)
8 Correct 0 ms 384 KB OK (n = 3, answer = YES)
9 Correct 0 ms 384 KB OK (n = 3, answer = YES)
10 Correct 0 ms 384 KB OK (n = 3, answer = YES)
11 Correct 0 ms 384 KB OK (n = 3, answer = YES)
12 Correct 0 ms 384 KB OK (n = 3, answer = YES)
13 Correct 1 ms 384 KB OK (n = 3, answer = NO)
14 Correct 0 ms 384 KB OK (n = 3, answer = YES)
15 Correct 1 ms 384 KB OK (n = 3, answer = YES)
16 Correct 0 ms 384 KB OK (n = 3, answer = NO)
17 Correct 1 ms 384 KB OK (n = 3, answer = NO)
18 Correct 2 ms 896 KB OK (n = 100, answer = NO)
19 Correct 8 ms 1024 KB OK (n = 100, answer = YES)
20 Correct 1 ms 384 KB OK (n = 12, answer = YES)
21 Correct 1 ms 384 KB OK (n = 12, answer = YES)
22 Correct 1 ms 384 KB OK (n = 12, answer = NO)
23 Correct 1 ms 384 KB OK (n = 12, answer = NO)
24 Correct 1 ms 384 KB OK (n = 12, answer = YES)
25 Correct 1 ms 384 KB OK (n = 12, answer = YES)
26 Correct 1 ms 384 KB OK (n = 12, answer = YES)
27 Correct 1 ms 384 KB OK (n = 12, answer = YES)
28 Correct 1 ms 384 KB OK (n = 6, answer = YES)
29 Correct 1 ms 384 KB OK (n = 12, answer = YES)
30 Correct 8 ms 896 KB OK (n = 100, answer = NO)
31 Correct 7 ms 896 KB OK (n = 100, answer = YES)
32 Correct 12 ms 1024 KB OK (n = 100, answer = NO)
33 Correct 9 ms 896 KB OK (n = 100, answer = YES)
34 Correct 22 ms 1280 KB OK (n = 100, answer = YES)
35 Correct 25 ms 1408 KB OK (n = 100, answer = YES)
36 Correct 23 ms 1400 KB OK (n = 100, answer = YES)
37 Correct 4 ms 768 KB OK (n = 28, answer = YES)
38 Correct 6 ms 896 KB OK (n = 27, answer = YES)
39 Correct 21 ms 1280 KB OK (n = 90, answer = YES)
40 Correct 3 ms 896 KB OK (n = 100, answer = YES)
41 Correct 3 ms 896 KB OK (n = 100, answer = YES)
42 Correct 1 ms 512 KB OK (n = 10, answer = YES)
43 Correct 83 ms 2040 KB OK (n = 100, answer = YES)
44 Correct 50 ms 1332 KB OK (n = 100, answer = YES)
45 Correct 18 ms 1024 KB OK (n = 100, answer = YES)
46 Correct 16 ms 1024 KB OK (n = 100, answer = YES)
47 Correct 56 ms 1912 KB OK (n = 100, answer = NO)
48 Correct 1 ms 768 KB OK (n = 100, answer = NO)
49 Correct 9 ms 1152 KB OK (n = 100, answer = NO)
50 Correct 72 ms 2040 KB OK (n = 100, answer = YES)
51 Correct 77 ms 2040 KB OK (n = 100, answer = YES)
52 Correct 57 ms 1528 KB OK (n = 100, answer = YES)
53 Correct 4 ms 896 KB OK (n = 100, answer = YES)
54 Correct 2 ms 896 KB OK (n = 100, answer = YES)
55 Execution timed out 1084 ms 51064 KB Time limit exceeded
56 Halted 0 ms 0 KB -