Submission #198016

# Submission time Handle Problem Language Result Execution time Memory
198016 2020-01-24T13:48:20 Z alrad Pod starim krovovima (COCI20_psk) C++17
50 / 50
3 ms 380 KB
#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 , pair<int , int> > > a(n);
   for (int i = 0; i < n; i++) {
      int x , y;
      cin >> x >> y;
      a[i] = {i , {x , y}};
   }
   auto comp = [&](pair<int , pair<int , int> > &x , pair<int , pair<int , int> > &y) {
      return x.second.second > y.second.second;
   };
   int tot = 0;
   vector<int> ans(n);
   sort(a.begin() , a.end() , comp);
   for (int i = 0; i < n; i++) {
      for (int j = i + 1; j < n; j++) {
         if (a[j].second.first == 0) {
            continue;
         }
         int delta = min(a[j].second.first , a[i].second.second - a[i].second.first);
         a[j].second.first -= delta;
         a[i].second.first += delta;
      }
      ans[a[i].first] = a[i].second.first;
      tot += (a[i].second.first == 0);
   }
   cout << tot << '\n';
   for (auto e : ans) {
      cout << e << " ";
   }
   return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Correct 2 ms 256 KB Output is correct
7 Correct 2 ms 380 KB Output is correct
8 Correct 3 ms 376 KB Output is correct
9 Correct 3 ms 376 KB Output is correct
10 Correct 3 ms 376 KB Output is correct