Submission #519648

#TimeUsernameProblemLanguageResultExecution timeMemory
519648sofapudenSails (IOI07_sails)C++14
100 / 100
72 ms7388 KiB
#include<bits/stdc++.h> using namespace std; int main() { ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); int n; cin >> n; vector<pair<int,int>> v(n); for(auto &x : v)cin >> x.first >> x.second; set<pair<int,int>> S; S.insert({1,1}); S.insert({1,2}); int cn = 3; sort(v.begin(),v.end()); for(int i = 0; i < n; ++i){ int mx = (*S.rbegin()).first; int am = min(v[i].first+1,mx+v[i].second)-mx; if(v[i].second == am){ S.erase(prev(S.end())); S.insert({mx+am,cn++}); continue; } S.insert({mx+am,cn++}); auto it = S.lower_bound({v[i].first-v[i].second+1,0}); if(it == S.begin())it = next(it); auto it2 = prev(it); S.insert({(*it2).first+v[i].second-(v[i].first-(*it).first+1),cn++}); S.erase(it); S.erase(it2); S.insert({1,cn++}); } vector<int> v2; for(auto x : S)v2.push_back(x.first); reverse(v2.begin(),v2.end()); long long ans = 0; for(int i = 0; i < v2.size(); ++i){ ans += 1ll * i * (v2[i]-1); } cout << ans << '\n'; }

Compilation message (stderr)

sails.cpp: In function 'int main()':
sails.cpp:42:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   42 |     for(int i = 0; i < v2.size(); ++i){
      |                    ~~^~~~~~~~~~~
#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...