# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
743458 | NintsiChkhaidze | Ice Hockey World Championship (CEOI15_bobek) | C++17 | 311 ms | 20840 KiB |
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>
#define ll long long
#define s second
#define pb push_back
#define f first
#define int ll
using namespace std;
const int N = 45;
int a[N],b[N];
vector <int> v1,v2;
signed main (){
ios_base::sync_with_stdio(0),cin.tie(NULL),cout.tie(NULL);
int n,lim;
cin>>n>>lim;
for (int i =1; i<=n;i++){
if (i > n/2) cin>>b[i - n/2];
else cin>>a[i];
}
int m1 = n/2,m2 = n - m1;
for (int i = 1; i < (1<<m1); i++){
int cost=0;
for (int j = 1; j <= m1; j++){
if ((i & (1<<(j - 1)))) {
cost += a[j];
}
}
if (cost <= lim) v1.pb(cost);
}
for (int i = 1; i < (1<<m2); i++){
int cost=0;
for (int j = 1; j <= m2; j++){
if ((i & (1<<(j - 1)))) {
cost += b[j];
}
}
if (cost <= lim) v2.pb(cost);
}
sort(v1.begin(),v1.end());
sort(v2.begin(),v2.end());
int ans = 1 + v1.size() + v2.size(),r=-1;
for (int i = v1.size()-1; i >= 0; i--){
while (r + 1 < v2.size() && v1[i] + v2[r + 1] <= lim) ++r;
ans += r + 1;
}
cout<<ans;
}
/*
5 1000
100 1500 500 500 1000
*/
Compilation message (stderr)
# | 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... |