提交时间:2023-10-05 23:34:27

运行 ID: 105287

#include<bits/stdc++.h> using namespace std; int a[2000]; int f[2000][2000]; int main() { int n,m; cin>>n>>m; for(int i=1;i<=n;i++) cin>>a[i]; for(int j=0;j<=n;j++) for(int i=1;i<=m;i++) f[j][i]=i; for(int i=1;i<=n;i++) { for(int j=0;j<=m;j++) { if(j>=a[i]) f[i][j]=min(f[i-1][j],f[i-1][j-a[i]]); } } if(f[n][m]==0) cout<<"yes"<<endl; else cout<<"no"<<endl; for(int j=0;j<=n;j++) for(int i=0;i<=m;i++) f[j][i]=0; for(int i=1;i<=n;i++) a[i]=0; return 0; }