求救!

P1658 购物

@[pppppLF](https://www.luogu.com.cn/user/990781) ```cpp 另外推荐: #include<bits/stdc++.h> using namespace std; const int N=10000+10; int n,k,a[N],cnt=0; int main() { cin>>n>>k; for(int i=1;i<=k;i++) cin>>a[i]; sort(a+1,a+k+1); if(a[1]!=1){ cout<<-1; return 0; } int now=0; while(now<n){ int op=1; for(int j=k;j>=1;j--) if(a[j]<=now+1){ op=j; break; } if(op==1&&a[op]>now+1){ cout<<-1<<endl; return 0; } now+=a[op],cnt++; } cout<<cnt; return 0; } ```
by shujingyi @ 2023-12-25 20:28:45


|