Submission #1116670

# Submission time Handle Problem Language Result Execution time Memory
1116670 2024-11-22T07:05:23 Z NotLinux Detecting Molecules (IOI16_molecules) C++17
9 / 100
1 ms 560 KB
#include "molecules.h"
#include <bits/stdc++.h>
using namespace std;
std::vector<int> find_subset(int l, int u, std::vector<int> w) {
    sort(w.begin() , w.end());
    int n = (int)w.size();
    int pre[n] , suf[n];
    pre[0] = w[0];
    suf[n-1] = w[n-1];
    for(int i = 1;i<n;i++){
        pre[i] = pre[i-1] + w[i];
    }
    for(int i = n-2;i>=0;i--){
        suf[i] = suf[i+1] + w[i];
    }
    for(int i = 1;i<=n;i++){
        if(pre[i-1] <= u and suf[n-i] >= l){
            // cout << "size : " << i << endl;
            int cursum = pre[i-1] , lst = n;
            vector < int > ret;
            for(int j = i-1;j>=0;j--){
                int bsl = j , bsr = lst-1;
                while(bsl < bsr){
                    int mid = (bsl + bsr) / 2;
                    // cout << "mid " << mid << " : " << cursum - w[j] + w[mid] << " > " << l << endl;
                    if((cursum - w[j] + w[mid]) > l)bsr = mid;
                    else bsl = mid+1;
                }
                cursum += w[bsl] - w[j];
                ret.push_back(bsl);
                // cout << "added : " << w[bsl] << endl;
                lst = bsl;
            }
            return ret;
        }
    }
    return vector<int>();
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 336 KB OK (n = 1, answer = NO)
2 Correct 1 ms 336 KB OK (n = 1, answer = NO)
3 Correct 1 ms 336 KB OK (n = 1, answer = YES)
4 Correct 1 ms 336 KB OK (n = 2, answer = YES)
5 Correct 1 ms 336 KB OK (n = 2, answer = YES)
6 Correct 1 ms 336 KB OK (n = 3, answer = YES)
7 Correct 1 ms 336 KB OK (n = 3, answer = YES)
8 Correct 1 ms 336 KB OK (n = 3, answer = YES)
9 Correct 1 ms 336 KB OK (n = 3, answer = YES)
10 Correct 1 ms 336 KB OK (n = 3, answer = YES)
11 Correct 1 ms 560 KB OK (n = 3, answer = YES)
12 Correct 1 ms 336 KB OK (n = 3, answer = YES)
13 Correct 1 ms 336 KB OK (n = 3, answer = NO)
14 Correct 1 ms 336 KB OK (n = 3, answer = YES)
15 Correct 1 ms 336 KB OK (n = 3, answer = YES)
16 Correct 1 ms 336 KB OK (n = 3, answer = NO)
17 Correct 1 ms 336 KB OK (n = 3, answer = NO)
18 Correct 1 ms 336 KB OK (n = 100, answer = NO)
19 Correct 1 ms 336 KB OK (n = 100, answer = YES)
# Verdict Execution time Memory Grader output
1 Correct 1 ms 336 KB OK (n = 12, answer = YES)
2 Correct 1 ms 336 KB OK (n = 12, answer = YES)
3 Correct 1 ms 336 KB OK (n = 12, answer = NO)
4 Correct 1 ms 440 KB OK (n = 12, answer = NO)
5 Correct 1 ms 336 KB OK (n = 12, answer = YES)
6 Correct 1 ms 336 KB OK (n = 12, answer = YES)
7 Correct 1 ms 336 KB OK (n = 12, answer = YES)
8 Correct 1 ms 336 KB OK (n = 12, answer = YES)
9 Correct 1 ms 336 KB OK (n = 6, answer = YES)
10 Correct 1 ms 504 KB OK (n = 12, answer = YES)
11 Correct 1 ms 336 KB OK (n = 100, answer = NO)
12 Incorrect 1 ms 336 KB sum of weights should be in [50..51] but it is 35
13 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 336 KB OK (n = 1, answer = NO)
2 Correct 1 ms 336 KB OK (n = 1, answer = NO)
3 Correct 1 ms 336 KB OK (n = 1, answer = YES)
4 Correct 1 ms 336 KB OK (n = 2, answer = YES)
5 Correct 1 ms 336 KB OK (n = 2, answer = YES)
6 Correct 1 ms 336 KB OK (n = 3, answer = YES)
7 Correct 1 ms 336 KB OK (n = 3, answer = YES)
8 Correct 1 ms 336 KB OK (n = 3, answer = YES)
9 Correct 1 ms 336 KB OK (n = 3, answer = YES)
10 Correct 1 ms 336 KB OK (n = 3, answer = YES)
11 Correct 1 ms 560 KB OK (n = 3, answer = YES)
12 Correct 1 ms 336 KB OK (n = 3, answer = YES)
13 Correct 1 ms 336 KB OK (n = 3, answer = NO)
14 Correct 1 ms 336 KB OK (n = 3, answer = YES)
15 Correct 1 ms 336 KB OK (n = 3, answer = YES)
16 Correct 1 ms 336 KB OK (n = 3, answer = NO)
17 Correct 1 ms 336 KB OK (n = 3, answer = NO)
18 Correct 1 ms 336 KB OK (n = 100, answer = NO)
19 Correct 1 ms 336 KB OK (n = 100, answer = YES)
20 Correct 1 ms 336 KB OK (n = 12, answer = YES)
21 Correct 1 ms 336 KB OK (n = 12, answer = YES)
22 Correct 1 ms 336 KB OK (n = 12, answer = NO)
23 Correct 1 ms 440 KB OK (n = 12, answer = NO)
24 Correct 1 ms 336 KB OK (n = 12, answer = YES)
25 Correct 1 ms 336 KB OK (n = 12, answer = YES)
26 Correct 1 ms 336 KB OK (n = 12, answer = YES)
27 Correct 1 ms 336 KB OK (n = 12, answer = YES)
28 Correct 1 ms 336 KB OK (n = 6, answer = YES)
29 Correct 1 ms 504 KB OK (n = 12, answer = YES)
30 Correct 1 ms 336 KB OK (n = 100, answer = NO)
31 Incorrect 1 ms 336 KB sum of weights should be in [50..51] but it is 35
32 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 336 KB OK (n = 1, answer = NO)
2 Correct 1 ms 336 KB OK (n = 1, answer = NO)
3 Correct 1 ms 336 KB OK (n = 1, answer = YES)
4 Correct 1 ms 336 KB OK (n = 2, answer = YES)
5 Correct 1 ms 336 KB OK (n = 2, answer = YES)
6 Correct 1 ms 336 KB OK (n = 3, answer = YES)
7 Correct 1 ms 336 KB OK (n = 3, answer = YES)
8 Correct 1 ms 336 KB OK (n = 3, answer = YES)
9 Correct 1 ms 336 KB OK (n = 3, answer = YES)
10 Correct 1 ms 336 KB OK (n = 3, answer = YES)
11 Correct 1 ms 560 KB OK (n = 3, answer = YES)
12 Correct 1 ms 336 KB OK (n = 3, answer = YES)
13 Correct 1 ms 336 KB OK (n = 3, answer = NO)
14 Correct 1 ms 336 KB OK (n = 3, answer = YES)
15 Correct 1 ms 336 KB OK (n = 3, answer = YES)
16 Correct 1 ms 336 KB OK (n = 3, answer = NO)
17 Correct 1 ms 336 KB OK (n = 3, answer = NO)
18 Correct 1 ms 336 KB OK (n = 100, answer = NO)
19 Correct 1 ms 336 KB OK (n = 100, answer = YES)
20 Correct 1 ms 336 KB OK (n = 12, answer = YES)
21 Correct 1 ms 336 KB OK (n = 12, answer = YES)
22 Correct 1 ms 336 KB OK (n = 12, answer = NO)
23 Correct 1 ms 440 KB OK (n = 12, answer = NO)
24 Correct 1 ms 336 KB OK (n = 12, answer = YES)
25 Correct 1 ms 336 KB OK (n = 12, answer = YES)
26 Correct 1 ms 336 KB OK (n = 12, answer = YES)
27 Correct 1 ms 336 KB OK (n = 12, answer = YES)
28 Correct 1 ms 336 KB OK (n = 6, answer = YES)
29 Correct 1 ms 504 KB OK (n = 12, answer = YES)
30 Correct 1 ms 336 KB OK (n = 100, answer = NO)
31 Incorrect 1 ms 336 KB sum of weights should be in [50..51] but it is 35
32 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 336 KB OK (n = 1, answer = NO)
2 Correct 1 ms 336 KB OK (n = 1, answer = NO)
3 Correct 1 ms 336 KB OK (n = 1, answer = YES)
4 Correct 1 ms 336 KB OK (n = 2, answer = YES)
5 Correct 1 ms 336 KB OK (n = 2, answer = YES)
6 Correct 1 ms 336 KB OK (n = 3, answer = YES)
7 Correct 1 ms 336 KB OK (n = 3, answer = YES)
8 Correct 1 ms 336 KB OK (n = 3, answer = YES)
9 Correct 1 ms 336 KB OK (n = 3, answer = YES)
10 Correct 1 ms 336 KB OK (n = 3, answer = YES)
11 Correct 1 ms 560 KB OK (n = 3, answer = YES)
12 Correct 1 ms 336 KB OK (n = 3, answer = YES)
13 Correct 1 ms 336 KB OK (n = 3, answer = NO)
14 Correct 1 ms 336 KB OK (n = 3, answer = YES)
15 Correct 1 ms 336 KB OK (n = 3, answer = YES)
16 Correct 1 ms 336 KB OK (n = 3, answer = NO)
17 Correct 1 ms 336 KB OK (n = 3, answer = NO)
18 Correct 1 ms 336 KB OK (n = 100, answer = NO)
19 Correct 1 ms 336 KB OK (n = 100, answer = YES)
20 Correct 1 ms 336 KB OK (n = 12, answer = YES)
21 Correct 1 ms 336 KB OK (n = 12, answer = YES)
22 Correct 1 ms 336 KB OK (n = 12, answer = NO)
23 Correct 1 ms 440 KB OK (n = 12, answer = NO)
24 Correct 1 ms 336 KB OK (n = 12, answer = YES)
25 Correct 1 ms 336 KB OK (n = 12, answer = YES)
26 Correct 1 ms 336 KB OK (n = 12, answer = YES)
27 Correct 1 ms 336 KB OK (n = 12, answer = YES)
28 Correct 1 ms 336 KB OK (n = 6, answer = YES)
29 Correct 1 ms 504 KB OK (n = 12, answer = YES)
30 Correct 1 ms 336 KB OK (n = 100, answer = NO)
31 Incorrect 1 ms 336 KB sum of weights should be in [50..51] but it is 35
32 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 336 KB OK (n = 1, answer = NO)
2 Correct 1 ms 336 KB OK (n = 1, answer = NO)
3 Correct 1 ms 336 KB OK (n = 1, answer = YES)
4 Correct 1 ms 336 KB OK (n = 2, answer = YES)
5 Correct 1 ms 336 KB OK (n = 2, answer = YES)
6 Correct 1 ms 336 KB OK (n = 3, answer = YES)
7 Correct 1 ms 336 KB OK (n = 3, answer = YES)
8 Correct 1 ms 336 KB OK (n = 3, answer = YES)
9 Correct 1 ms 336 KB OK (n = 3, answer = YES)
10 Correct 1 ms 336 KB OK (n = 3, answer = YES)
11 Correct 1 ms 560 KB OK (n = 3, answer = YES)
12 Correct 1 ms 336 KB OK (n = 3, answer = YES)
13 Correct 1 ms 336 KB OK (n = 3, answer = NO)
14 Correct 1 ms 336 KB OK (n = 3, answer = YES)
15 Correct 1 ms 336 KB OK (n = 3, answer = YES)
16 Correct 1 ms 336 KB OK (n = 3, answer = NO)
17 Correct 1 ms 336 KB OK (n = 3, answer = NO)
18 Correct 1 ms 336 KB OK (n = 100, answer = NO)
19 Correct 1 ms 336 KB OK (n = 100, answer = YES)
20 Correct 1 ms 336 KB OK (n = 12, answer = YES)
21 Correct 1 ms 336 KB OK (n = 12, answer = YES)
22 Correct 1 ms 336 KB OK (n = 12, answer = NO)
23 Correct 1 ms 440 KB OK (n = 12, answer = NO)
24 Correct 1 ms 336 KB OK (n = 12, answer = YES)
25 Correct 1 ms 336 KB OK (n = 12, answer = YES)
26 Correct 1 ms 336 KB OK (n = 12, answer = YES)
27 Correct 1 ms 336 KB OK (n = 12, answer = YES)
28 Correct 1 ms 336 KB OK (n = 6, answer = YES)
29 Correct 1 ms 504 KB OK (n = 12, answer = YES)
30 Correct 1 ms 336 KB OK (n = 100, answer = NO)
31 Incorrect 1 ms 336 KB sum of weights should be in [50..51] but it is 35
32 Halted 0 ms 0 KB -