Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
114821 | 陈星云 | 零钱兑换 | C++ | 通过 | 100 | 0 MS | 344 KB | 352 | 2023-12-09 09:56:04 |
#include<bits/stdc++.h> using namespace std; long long n,m; long long c[1111],f[11111]; int main() { cin>>n>>m; for(int i=1;i<=n;i++) cin>>c[i]; memset(f,0x3f3f3f3f,sizeof(f)); f[0]=0; for(int i=1;i<=n;i++) for(int j=c[i];j<=m;j++) f[j]=min(f[j-c[i]]+1,f[j]); if(f[m]>=0x3f3f3f3f||f[m]<0) cout<<"-1"; else cout<<f[m]<<endl; }