Submission #990176

#TimeUsernameProblemLanguageResultExecution timeMemory
990176hasan2006Detecting Molecules (IOI16_molecules)C++17
100 / 100
37 ms6316 KiB
#include "molecules.h" #include <bits/stdc++.h> using namespace std; #define TL ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); #define rall(s) s.rbegin(),s.rend() #define all(s) s.begin(),s.end() #define pb push_back #define se second #define fi first #define ll long long #define ld long double #define YES cout<<"YES\n" #define Yes cout<<"Yes\n" #define yes cout<<"yes\n" #define NO cout<<"NO\n" #define No cout<<"No\n" #define no cout<<"no\n" const int N = 5e5 + 9 , mod = 1e9 + 7; ll a[N] , b[N] , dp[N] , c[N] , d[N]; std::vector<int> find_subset(int l, int u, vector<int>w){ vector<pair<int,int>>v; for(int i = 0; i < w.size(); i++) v.pb({w[i] , i}); sort(all(v)); vector<int>ans; ll r = -1 , sum = 0; for(int i = 0; i < v.size(); i++){ while(r + 1 < v.size() && u - l >= v[r + 1].fi - v[i].fi && sum < l) r++ , sum += v[r].fi; if(sum >= l && sum <= u){ for(int j = i; j <= r; j++) ans.pb(v[j].se); break; } sum -= v[i].fi; } sort(all(ans)); return ans; } // Author : حسن

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:27:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   27 |     for(int i = 0; i < w.size(); i++)
      |                    ~~^~~~~~~~~~
molecules.cpp:32:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   32 |     for(int i = 0; i < v.size(); i++){
      |                    ~~^~~~~~~~~~
molecules.cpp:33:21: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   33 |         while(r + 1 < v.size() && u - l >= v[r + 1].fi - v[i].fi && sum < l)
      |               ~~~~~~^~~~~~~~~~
#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...