제출 #1323208

#제출 시각아이디문제언어결과실행 시간메모리
1323208jahinahnafDetecting Molecules (IOI16_molecules)C++20
0 / 100
0 ms332 KiB
#include <bits/stdc++.h>
#include "molecules.h"
using namespace std;

std::vector<int> find_subset(int l, int u, std::vector<int> w)
{
    vector<int> ans;
    int n = w.size();
    vector<pair<int, int>> prefixSum(n);
    for (int i  = 0; i < n; i++){
        prefixSum[i].first = i;
    }
    prefixSum[0].second = w[0];
    for (int i = 1; i < n; i++)
    {
        prefixSum[i].second = w[i] + prefixSum[i - 1].second;
    }
    sort(prefixSum.begin(), prefixSum.end(), [](const auto &a, const auto &b){
        return a.second < b.second;
    });

    for (int i = 0; i < n; i++)
    {
        ans.push_back(prefixSum[i].second);
    }
    bool paisi = false;
    int start = 0, end = 0;
    for (int i = 0; i < n; i++)
    {
        if (i == 0)
        {
            if (prefixSum[i].second >= min(l, u) && prefixSum[i].second <= max(l, u))
            {
                paisi = true;
                start = prefixSum[0].first, end = prefixSum[i].first;
            }
        }
        else
        {
            for (int j = i; j < n; j++)
            {
                if (prefixSum[j].second - prefixSum[i].second >= min(l, u) && prefixSum[j].second - prefixSum[i].second <= max(l, u))
                {
                    paisi = true;
                    start = prefixSum[i].first + 1, end = prefixSum[j].first;
                }
            }
        }
    }

    for (int i = min(start, end); i <= max(start, end); i++)
    {
        ans.push_back(i);
    }

    if (ans.size() > 0)
    {
        return ans;
    }

    return std::vector<int>(0);
}

컴파일 시 표준 에러 (stderr) 메시지

molecules.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
molecules_c.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...