This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
int main() {
int64_t n, m, ans = 0;
cin >> n >> m;
vector<int64_t> prices(n);
for (int64_t &price : prices) {
cin >> price;
}
int64_t limit = (1 << n);
for (int64_t mask = 0; mask < limit; mask++) {
char isValidMask = true;
int64_t money = m;
for (int64_t i = 0; i < n; i++) {
if (mask & (1 << i)) {
money -= prices[i];
if (money < 0) {
isValidMask = false;
break;
}
}
}
if (!isValidMask) {
continue;
}
ans++;
}
cout << ans << '\n';
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |