Submission #1268332

#TimeUsernameProblemLanguageResultExecution timeMemory
1268332uranium235Sails (IOI07_sails)C++17
5 / 100
18 ms1168 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; const char nn = '\n'; int main() { ios::sync_with_stdio(false); cin.tie(0); int n; cin >> n; vector<pair<int, int>> a(n + 1); for (pair<int, int> &i : a) cin >> i.first >> i.second; sort(a.begin(), a.end()); reverse(a.begin(), a.end()); int hang = a[0].first, cur = 0; int prev = a[0].first; vector<int> ans(10 + 1); for (pair<int, int> &i : a) { // cout << i.first << " " << i.second << nn; for (int j = i.first + 1; j <= hang; j++) ans[j] = cur; for (int j = hang + 1; j <= prev; j++) ans[j] = cur + 1; prev = i.first; hang = min(hang, i.first); if (hang > i.second) { hang -= i.second; } else { cur++; int leftover = i.second - hang; hang = i.first - leftover; } // cout << "dbg " << hang << " " << cur << nn; // for (int i : ans) cout << i << " "; // cout << nn; } ll total = 0; for (int i : ans) total += i * (i - 1) / 2; cout << total << nn; }
#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...