3 条题解
-
0
#include<bits/stdc++.h> using namespace std; int n,m; int ans=0; int a[10006],b[10006]; void work(int dep,int v,int p){ if(v>n)return; if(dep>m){ ans=max(ans,p); return; } work(dep+1,v+a[dep],p+a[dep]*b[dep]); work(dep+1,v,p); } int main(){ cin>>n>>m; for(int i=1;i<=m;i++){ cin>>a[i]>>b[i]; } work(1,0,0); cout<<ans<<endl; return 0; }
信息
- ID
- 635
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 2
- 标签
- 递交数
- 80
- 已通过
- 65
- 上传者