|
- #include<cstdio>
- #include<algorithm>
- using namespace std;
- int n,k;
- int f[20000001];
- int a[51];
- const int INF=999999999;
- int ans;
- int main()
- {
- scanf("%d%d",&k,&n);
- for(int i=1;i<=2000000;i++)
- {
- f[i]=INF;
- }
- f[0]=0;
- for(int i=1;i<=n;i++)
- {
- scanf("%d",&a[i]);
- }
- for(int i=1;i<=n;i++)
- {
- for(int j=a[i];j<=2000000;j++)
- {
- if(f[j-a[i]]+1>k)
- {
- continue;
- }
- else
- {
- f[j]=min(f[j],f[j-a[i]]+1);
- }
- }
- }
- for(int i=1;i<=2000000;i++)
- {
- if(f[i]==INF)
- {
- break;
- }
- ans++;
- }
- printf("%d",ans);
- return 0;
- }
复制代码 |
|