AlexNeagu11

Untitled

Jan 10th, 2020
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.78 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. #define pb push_back
  3. using namespace std;
  4. ifstream in("ou.in");
  5. ofstream out("ou.out");
  6. typedef long long ll;
  7. const int MOD = 1e9 + 7;
  8. int main() {
  9. ll n; in >> n;
  10. vector < ll > v(n + 5), mars(n + 5, 0);
  11. for (ll i = 1; i <= n; i++) {
  12. in >> v[i];
  13. if (i == 1 || i == n) continue;
  14. ll max_case = v[i] / 2;
  15. ll min_case = min(n - i, i - 1);
  16. ll cas = min(max_case, min_case);
  17. if (cas == 0) continue;
  18. ll add = v[i] / (cas * 2);
  19. v[i] -= add * (cas * 2);
  20. ll L = i - cas;
  21. ll R = i + cas;
  22. mars[L] += add;
  23. mars[i] -= add;
  24. mars[i + 1] += add;
  25. mars[R + 1] -= add;
  26. }
  27. ll prefix = 0;
  28. for (int i = 1; i <= n; i++) {
  29. prefix += mars[i];
  30. out << prefix + v[i] << " ";
  31. }
  32. return 0;
  33. }
Advertisement
Add Comment
Please, Sign In to add comment