fork download
  1. #include<bits/stdc++.h>
  2.  
  3. using namespace std;
  4. #define int long long int
  5.  
  6. // ============================================================================================================
  7.  
  8.  
  9. int subset(int *arr, int i, int size) {
  10. int sum = 0;
  11. size -= 1;
  12. while (i) {
  13. if (i & 1) {
  14. sum += arr[size];
  15. }
  16. size--;
  17. i = i >> 1;
  18. }
  19. return sum;
  20.  
  21. }
  22.  
  23.  
  24. int32_t main() {
  25.  
  26. int n, a, b, val;
  27. cin >> n >> a >> b;
  28. int arr[n];
  29. for(int i = 0;i<n;++i) {
  30. cin >> arr[i];
  31. }
  32. int range = 1 << n;
  33. int count = 0;
  34. for(int i = 1;i<range;++i) {
  35. val = subset(arr, i, n);
  36. if (( val >= a) && (val <= b)) {
  37. count++;
  38. }
  39. }
  40. if ((a <= 0) && (b >= 0)) {
  41. count++;
  42. }
  43. cout << count;
  44. return 0;
  45. }
  46.  
Success #stdin #stdout 0s 4364KB
stdin
3 -1 2
1
-2
3
stdout
5