Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- const int N = 2e5 + 5;
- int n;
- int a[N], pos[N], used[N];
- int main() {
- cin >> n;
- for (int i = 1; i <= n; i++) {
- cin >> a[i];
- pos[i] = i;
- }
- sort(pos + 1, pos + n + 1, [&](int i, int j) {
- return (a[i] % 100) < (a[j] % 100);
- });
- vector < pair <int, int> > pairs;
- long long t = 0;
- int r = n, l = 1;
- while (l < r) {
- int s = (a[ pos[r] ] % 100) + (a[ pos[l] ] % 100);
- if (s >= 100) {
- pairs.push_back(make_pair(pos[l], pos[r]));
- t += (a[ pos[r] ] + a[ pos[l] ]) / 100;
- used[pos[l]] = used[pos[r]] = 1;
- l++, r--;
- } else {
- l++;
- }
- }
- for (int i = 1; i <= n; i++) {
- if (!used[i]) {
- t += a[i] / 100;
- }
- }
- cout << t << endl;
- cout << pairs.size() << endl;
- for (int i = 0; i < pairs.size(); i++) {
- cout << pairs[i].first << " " << pairs[i].second << endl;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement