제출 #121352

#제출 시각아이디문제언어결과실행 시간메모리
121352turbatSails (IOI07_sails)C++14
80 / 100
72 ms2976 KiB
#include <bits/stdc++.h> using namespace std; #define N 100005 int n, mh; long long s, cnt[N], cnt1[N], ans, avr; pair <int, int> mast[N]; int main (){ cin >> n; for (int i = 0;i < n;i++){ cin >> mast[i].first>> mast[i].second; s += mast[i].second; mh = max(mh, mast[i].first); cnt[mast[i].first]++; cnt[mast[i].first - mast[i].second]--; } for (int i = mh;i > 0;i--) cnt[i] += cnt[i + 1]; for (int i = mh;i > 0;i--){ avr = min(s / i, cnt[i]); cnt[i - 1] += cnt[i] - avr; cnt[i] = avr; s -= avr; } for (int i = 1;i <= mh;i++) ans += cnt[i] * (cnt[i] - 1) / 2; cout << ans << endl; }
#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...