提交时间:2026-01-04 14:57:00

运行 ID: 80041

#include <bits/stdc++.h> #define V 20010 #define maxn 35 using namespace std; int n,m; int f[maxn][V],a[maxn]; int main(){ cin>>m>>n; for(int i=1;i<=n;i++) cin>>a[i]; for(int i=1;i<=n;i++) f[i][0]=0; for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) if(j>=a[i])f[i][j]=max(f[i-1][j],f[i-1][j-a[i]]+a[i]); else f[i][j]=f[i-1][j]; cout<<m-f[n][m]<<endl; return 0; }