Submission #616913

#TimeUsernameProblemLanguageResultExecution timeMemory
6169131neSails (IOI07_sails)C++14
40 / 100
1088 ms7088 KiB
#include<bits/stdc++.h> using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int n;cin>>n; vector<pair<int,int>>arr(n); vector<long long>v(100001,0); for (int i = 0;i<n;++i){ cin>>arr[i].first>>arr[i].second; } sort(arr.begin(),arr.end(),[&](auto x,auto y){ return x.first < y.first; }); long long ans = 0; priority_queue<pair<long long,long long>>q; int right = 0; for (int i = 0;i<n;++i){ vector<pair<long long,long long>>temp; while(right < arr[i].first){ if (arr[i].second > 0){ temp.push_back({-1,right}); v[right]++; arr[i].second--; } else{ temp.push_back({0,right}); } ++right; } for (int j = 0;j<arr[i].second;++j){ auto u = q.top(); q.pop(); ans+=-u.first; v[u.second]++; temp.push_back({-v[u.second],u.second}); } for (auto x:temp)q.push(x); } cout<<ans<<'\n'; return 0; }
#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...
#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...