Submission #963189

#TimeUsernameProblemLanguageResultExecution timeMemory
963189maxFedorchukDetecting Molecules (IOI16_molecules)C++17
100 / 100
40 ms9408 KiB
#include <bits/stdc++.h>
using namespace std;
 
#include "molecules.h"
 
vector<int> find_subset(const int l,const int u,const vector<int> w) 
{
    vector < pair < long long ,long long > > mas;
    vector < int > ans;
 
    for(long long i=0;i<w.size();i++)
    {
        mas.push_back({w[i],i});
    }
 
    sort(mas.begin(),mas.end());
 
    for(long long sum=0,ru=0,lu=0;ru<w.size();ru++)
    {
        sum+=mas[ru].first;
 
        while(sum>u)
        {
            sum-=mas[lu].first;
            lu++;
        }
 
        if(sum>=l)
        {
            for(long long j=lu;j<=ru;j++)
            {
                ans.push_back(mas[j].second);
            }
 
            break;
        }
    }
 
    return ans;
}

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:11:24: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   11 |     for(long long i=0;i<w.size();i++)
      |                       ~^~~~~~~~~
molecules.cpp:18:37: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   18 |     for(long long sum=0,ru=0,lu=0;ru<w.size();ru++)
      |                                   ~~^~~~~~~~~
#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...