Submission #265590

# Submission time Handle Problem Language Result Execution time Memory
265590 2020-08-15T02:26:08 Z cjoa Detecting Molecules (IOI16_molecules) C++11
19 / 100
1 ms 512 KB
#include "molecules.h"

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

using namespace std;

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

   map< int,vector<int> > MAP;
   for (int i = 0; i < N; ++i)
      MAP[ w[i] ].push_back(i);

   assert(MAP.size() <= 2);

   if (MAP.size() == 1) {
      // subtask 1
      long long sum = 0;
      for (int i = 0; i < N; ++i) {
         sum += w[i];
         if (l <= sum && sum <= u) {
            vector<int> res;
            for (int j = 0; j <= i; ++j)
               res.push_back(j);
            return res;
         }
      }
      return {};
   }

   int N1 = MAP.begin()->second.size();
   int W1 = MAP.begin()->first;
   int N2 = MAP.rbegin()->second.size();
   int W2 = MAP.rbegin()->first;

   for (int n1 = 0; n1 <= N1; ++n1) {
      for (int n2 = 0; n2 <= N2; ++n2) {
         long long sum = n1 * W1 + n2 * W2;
         if (l <= sum && sum <= u) {
            vector<int> res;
            for (int i = 0; i < n1; ++i)
               res.push_back( MAP[W1][i] );
            for (int i = 0; i < n2; ++i)
               res.push_back( MAP[W2][i] );
            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 1 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 1 ms 256 KB OK (n = 3, answer = YES)
8 Correct 1 ms 384 KB OK (n = 3, answer = YES)
9 Correct 1 ms 256 KB OK (n = 3, answer = YES)
10 Correct 1 ms 256 KB OK (n = 3, answer = YES)
11 Correct 0 ms 256 KB OK (n = 3, answer = YES)
12 Correct 0 ms 256 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 1 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 1 ms 256 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 1 ms 256 KB OK (n = 12, answer = YES)
3 Correct 1 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 0 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 0 ms 256 KB OK (n = 100, answer = YES)
13 Correct 1 ms 256 KB OK (n = 100, answer = NO)
14 Correct 0 ms 256 KB OK (n = 100, answer = YES)
15 Correct 0 ms 256 KB OK (n = 100, answer = YES)
16 Correct 0 ms 256 KB OK (n = 100, answer = YES)
17 Correct 0 ms 256 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 1 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 1 ms 256 KB OK (n = 3, answer = YES)
8 Correct 1 ms 384 KB OK (n = 3, answer = YES)
9 Correct 1 ms 256 KB OK (n = 3, answer = YES)
10 Correct 1 ms 256 KB OK (n = 3, answer = YES)
11 Correct 0 ms 256 KB OK (n = 3, answer = YES)
12 Correct 0 ms 256 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 1 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 1 ms 256 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 1 ms 256 KB OK (n = 12, answer = YES)
22 Correct 1 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 0 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 0 ms 256 KB OK (n = 100, answer = YES)
32 Correct 1 ms 256 KB OK (n = 100, answer = NO)
33 Correct 0 ms 256 KB OK (n = 100, answer = YES)
34 Correct 0 ms 256 KB OK (n = 100, answer = YES)
35 Correct 0 ms 256 KB OK (n = 100, answer = YES)
36 Correct 0 ms 256 KB OK (n = 100, answer = YES)
37 Runtime error 1 ms 512 KB Execution killed with signal 11
38 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 1 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 1 ms 256 KB OK (n = 3, answer = YES)
8 Correct 1 ms 384 KB OK (n = 3, answer = YES)
9 Correct 1 ms 256 KB OK (n = 3, answer = YES)
10 Correct 1 ms 256 KB OK (n = 3, answer = YES)
11 Correct 0 ms 256 KB OK (n = 3, answer = YES)
12 Correct 0 ms 256 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 1 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 1 ms 256 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 1 ms 256 KB OK (n = 12, answer = YES)
22 Correct 1 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 0 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 0 ms 256 KB OK (n = 100, answer = YES)
32 Correct 1 ms 256 KB OK (n = 100, answer = NO)
33 Correct 0 ms 256 KB OK (n = 100, answer = YES)
34 Correct 0 ms 256 KB OK (n = 100, answer = YES)
35 Correct 0 ms 256 KB OK (n = 100, answer = YES)
36 Correct 0 ms 256 KB OK (n = 100, answer = YES)
37 Runtime error 1 ms 512 KB Execution killed with signal 11
38 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 1 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 1 ms 256 KB OK (n = 3, answer = YES)
8 Correct 1 ms 384 KB OK (n = 3, answer = YES)
9 Correct 1 ms 256 KB OK (n = 3, answer = YES)
10 Correct 1 ms 256 KB OK (n = 3, answer = YES)
11 Correct 0 ms 256 KB OK (n = 3, answer = YES)
12 Correct 0 ms 256 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 1 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 1 ms 256 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 1 ms 256 KB OK (n = 12, answer = YES)
22 Correct 1 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 0 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 0 ms 256 KB OK (n = 100, answer = YES)
32 Correct 1 ms 256 KB OK (n = 100, answer = NO)
33 Correct 0 ms 256 KB OK (n = 100, answer = YES)
34 Correct 0 ms 256 KB OK (n = 100, answer = YES)
35 Correct 0 ms 256 KB OK (n = 100, answer = YES)
36 Correct 0 ms 256 KB OK (n = 100, answer = YES)
37 Runtime error 1 ms 512 KB Execution killed with signal 11
38 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 1 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 1 ms 256 KB OK (n = 3, answer = YES)
8 Correct 1 ms 384 KB OK (n = 3, answer = YES)
9 Correct 1 ms 256 KB OK (n = 3, answer = YES)
10 Correct 1 ms 256 KB OK (n = 3, answer = YES)
11 Correct 0 ms 256 KB OK (n = 3, answer = YES)
12 Correct 0 ms 256 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 1 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 1 ms 256 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 1 ms 256 KB OK (n = 12, answer = YES)
22 Correct 1 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 0 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 0 ms 256 KB OK (n = 100, answer = YES)
32 Correct 1 ms 256 KB OK (n = 100, answer = NO)
33 Correct 0 ms 256 KB OK (n = 100, answer = YES)
34 Correct 0 ms 256 KB OK (n = 100, answer = YES)
35 Correct 0 ms 256 KB OK (n = 100, answer = YES)
36 Correct 0 ms 256 KB OK (n = 100, answer = YES)
37 Runtime error 1 ms 512 KB Execution killed with signal 11
38 Halted 0 ms 0 KB -