제출 #1326053

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

vector <int> find_subset (int minim , int maxim , vector <int> sir)
{
    vector < pair <int , int> > copie(sir.size());
    for (int indice = 0 ; indice < (int)sir.size() ; indice++)
        { copie[indice] = {sir[indice] , indice}; }

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

    int dreapta = (int)copie.size() , suma = 0;
    while (dreapta && suma + copie[dreapta - 1].first <= maxim)
        { suma += copie[--dreapta].first; }

    if (suma >= minim)
    {
        vector <int> rezultat;
        for (int indice = dreapta ; indice < (int)copie.size() ; indice++)
            { rezultat.push_back(copie[indice].second); }

        return rezultat;
    }

    for (int stanga = 0 ; stanga < (int)copie.size() ; stanga++)
    {
        suma += sir[stanga];
        if (stanga == dreapta)
            { suma -= sir[dreapta++]; }

        while (dreapta < (int)copie.size() && suma > maxim)
            { suma -= copie[dreapta++].first; }

        if (minim <= suma && suma <= maxim)
        {
            vector <int> rezultat;
            for (int indice = 0 ; indice <= stanga ; indice++)
                { rezultat.push_back(copie[indice].second); }
            for (int indice = dreapta ; indice < (int)copie.size() ; indice++)
                { rezultat.push_back(copie[indice].second); }

            return rezultat;
        }
    }

    return 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...