Submission #1010765

#TimeUsernameProblemLanguageResultExecution timeMemory
1010765ASGA_RedSeaDetecting Molecules (IOI16_molecules)C++17
9 / 100
1 ms600 KiB
/**

                                    * بسم الله الرحمن الرحيم *

                ﴾ رَبِّ اشْرَحْ لِي صَدْرِي * وَيَسِّرْ لِي أَمْرِي * وَاحْلُلْ عُقْدَةً مِّن لِّسَانِي * يَفْقَهُوا قَوْلِي ﴿

*/

/// author : "ASGA"

#pragma GCC optimize("Ofast")
#include <bits/stdc++.h>

using namespace std;
using ll = long long;

#define ONLINE 0
#ifdef ONLINE_JUDGE
    #undef ONLINE;
    #define ONLINE 1
#endif

#define dbg(a) if(!ONLINE)cout << a << ' ';

const ll inf = 1e18;

vector <int> find_subset(int l,int r,vector <int> A){
    int n = A.size();

    vector <array <ll,2>> a(n);
    for(int i = 0;i < n;i++)a[i] = {A[i],i};

    sort(a.begin(),a.end());
    reverse(a.begin(),a.end());

    ll sum = 0;
    vector <int> ans;

    for(int i = 0;i < n;i++){
        if(a[i][0] + sum > r)continue;
        ans.push_back(a[i][1]);sum += a[i][0];
    }

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

    if(sum >= l)return ans;
    else return {};
}
#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...