- 买表
666
- @ 2026-8-14 11:42:42
#include<bits/stdc++.h> using namespace std; int v[10005],dp[500001],n,m,k=0; int main(){ cin>>n>>m; for(int i=1;i<=n;i++){ int v1,s; cin>>v1>>s; for(int j=1;j<=s;j*=2){ v[++k]=v1j; s-=j; } if(s){ v[++k]=v1s; } } dp[0]=1; for(int i=1;i<=k;i++){ for(int j=500000;j>=v[i];j--){ if(dp[j-v[i]]) dp[j]=1; } } for(int i=1;i<=m;i++){ int t; cin>>t; if(dp[t]) cout<<"Yes"<<endl; else cout<<"No"<<endl; } return 0; }
信息
- ID
- 2526
- 时间
- ms
- 内存
- MiB
- 难度
- 4
- 标签
- 递交数
- 15
- 已通过
- 9
- 上传者