Advertisement
vlatkovski

Oro (13/20, TLE)

Apr 6th, 2018
364
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.60 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int p, m, n, finalpos = -1;
  5. vector<int> g;
  6.  
  7. void f(int pos, int i) {
  8.     if (i == n) {
  9.         finalpos = max(pos, finalpos);
  10.         return;
  11.     }
  12.     int x = g[i];
  13.     if (pos-x >= 0) {
  14.         f(pos-x, i+1);
  15.     }
  16.     if (pos+x <= m) {
  17.         f(pos+x, i+1);
  18.     }
  19. }
  20.  
  21. int main() {
  22. //    std::ios::sync_with_stdio(false);
  23. //    freopen("in.txt", "r", stdin);
  24. //    freopen("out.txt", "w", stdout);
  25.  
  26.     cin >> p >> m >> n;
  27.     g.resize(n);
  28.     for (int i = 0; i < n; ++i) cin >> g[i];
  29.  
  30.     f(p, 0);
  31.     cout << finalpos << endl;
  32. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement