Advertisement
Saleh127

timus 1005 backtrack

Sep 2nd, 2020
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.64 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. #define ll long long
  4. #define test int t; cin>>t; while(t--)
  5. ll a[100000],ans=10000000000,sum=0,n;
  6. void backtrack(int index,int value)
  7. {
  8.  
  9. if(index==n)
  10. {
  11. ans=min(ans,abs((sum-value)-value));
  12. return;
  13. }
  14. else
  15. {
  16. backtrack(index+1,value);
  17.  
  18. backtrack(index+1,value+a[index]);
  19. return;
  20. }
  21. return;
  22. }
  23. int main()
  24. {
  25. ios_base::sync_with_stdio(0);
  26. cin.tie(0);cout.tie(0);
  27.  
  28. cin>>n;
  29. for(int i=0;i<n;i++)
  30. {
  31. cin>>a[i];
  32. sum+=a[i];
  33. }
  34. backtrack(0,0);
  35.  
  36. cout<<ans<<endl;
  37.  
  38. return 0;
  39. }
  40.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement