Submission #232613

# Submission time Handle Problem Language Result Execution time Memory
232613 2020-05-17T16:23:17 Z UserIsUndefined Detecting Molecules (IOI16_molecules) C++14
0 / 100
5 ms 384 KB
#include <bits/stdc++.h>
#include "molecules.h"
using namespace std;



long long presum[200005];




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

    vector<pair<int,int>> v;

    for (int i = 0 ; i < n ; i++){
        v.push_back({w[i], i});
    }

    sort(v.begin(), v.end());

    for (int i = 0 ; i < n ; i++){
        if (i == 0)presum[i] = v[i].first;
        else presum[i] = presum[i-1] + v[i].first;
    }


    vector<int> ans;

    for (int i = 1 ; i <= n ; i++){
        if (presum[i-1] > u)return ans;
        if (presum[n-1] - presum[n-1-i] < l)continue;

        long long sum = 0;

        for (int j = 0 ; j < i ; j++){
            sum+= v[j].first;
        }

        bool ok = false;
        int x = 0;
        int y = i;
        while(y < n){
            if ((sum >= l)&&(sum <= u)){break; ok = true;}
            else if (sum < l){
                sum+= v[y].first;
                y++;
            }
            else if (sum > u){
                sum-= v[x].first;
                x++;
            }
        }

        if (ok){
        for (int j = x ; j < y ; j++){
            ans.push_back(v[j].second);
        }
        return ans;
        }
    }

    return ans;

}
# Verdict Execution time Memory Grader output
1 Correct 4 ms 256 KB OK (n = 1, answer = NO)
2 Correct 5 ms 384 KB OK (n = 1, answer = NO)
3 Incorrect 4 ms 256 KB Contestant can not find answer, jury can
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 4 ms 256 KB Contestant can not find answer, jury can
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 4 ms 256 KB OK (n = 1, answer = NO)
2 Correct 5 ms 384 KB OK (n = 1, answer = NO)
3 Incorrect 4 ms 256 KB Contestant can not find answer, jury can
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 4 ms 256 KB OK (n = 1, answer = NO)
2 Correct 5 ms 384 KB OK (n = 1, answer = NO)
3 Incorrect 4 ms 256 KB Contestant can not find answer, jury can
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 4 ms 256 KB OK (n = 1, answer = NO)
2 Correct 5 ms 384 KB OK (n = 1, answer = NO)
3 Incorrect 4 ms 256 KB Contestant can not find answer, jury can
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 4 ms 256 KB OK (n = 1, answer = NO)
2 Correct 5 ms 384 KB OK (n = 1, answer = NO)
3 Incorrect 4 ms 256 KB Contestant can not find answer, jury can
4 Halted 0 ms 0 KB -