显示代码纯文本
/*written by 0koto*/
#prag\
ma GCC optimize("O1")
#include<cstdio>
#include<cctype>
#include<iostream>
#define loop(i,j,k) for(register int i=j;i<=k;++i)
#define rloop(i,j,k) for(register int i=j;i>=k;--i)
using namespace std;
inline void in(int &x){
x=0;int f=1;char c=getchar();
while(!isdigit(c)){if(!(c-'-'))f=-1;c=getchar();}
while (isdigit(c))x=(x<<3)+(x<<1)+(c^48),c=getchar();
x*=f;
}
inline void out(int x){
if(!x){putchar('0');return;}
if(x<0)x=~x+1,putchar('-');
char c[30]={0};
while(x)c[++c[0]]=x%10+48,x/=10;
while(c[0])putchar(c[c[0]--]);
}
int v,n,a,f[20001];
inline int koto(){
freopen("npack.in","r",stdin);
freopen("npack.out","w",stdout);
in(v),in(n);
loop(i,1,n){
in(a);
rloop(j,v,a) f[j]=max(f[j],f[j-a]+a);
}
out(v-f[v]);
}
int zero=koto();
int main(){;}