1 solutions
-
1
#include<bits/stdc++.h> using namespace std; typedef long long LL; int n=5; const int N=10; int w[N],v[N]; int main() { LL ans=0; for(int i=0;i<n;i++) //获取体积 { cin>>v[i]; } for(int i=0;i<n;i++) //获取价值 { cin>>w[i]; } for(int i=0;i<1<<n;i++) //枚举每种状态 { LL vs=0,ws=0; for(int j=0;j<n;j++) //判断状态i的时候,第j个物品是否选择 { if(i>>j&1) { vs+=v[j]; ws+=w[j]; } } if(vs<=15) //判断第i种状态的结果 { ans=max(ans,ws); } } cout<<ans; return 0; }
- 1
Information
- ID
- 637
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- 5
- Tags
- # Submissions
- 67
- Accepted
- 18
- Uploaded By