제출 #1274821

#제출 시각아이디문제언어결과실행 시간메모리
1274821gustavo_dSails (IOI07_sails)C++20
50 / 100
1096 ms7416 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; const int MAXN = 1e5; const int MAXH = 1e5; ll H[MAXN], qty[MAXN]; ll h[MAXH+1]; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int n; cin >> n; for (int i=0; i<n; i++) { cin >> H[i] >> qty[i]; for (int j=H[i]-qty[i]+1; j<=H[i]; j++) { h[j]++; } } // decrescente set<pair<ll, int>> freq; freq.insert({h[1], 1}); for (int i=2; i<=MAXH; i++) { while (h[i] > freq.begin()->first) { h[i]--; pair<ll, int> tmp = *freq.begin(); tmp.first++; freq.erase(freq.begin()); freq.insert(tmp); } freq.insert({h[i], i}); } ll ans = 0; for (auto [f, i] : freq) { // if (f == 0) continue; // cout << i << " com " << f << endl; ans += f*(f-1)/2; } 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...