Cod sursa(job #1688922)
Utilizator | Data | 13 aprilie 2016 20:04:13 | |
---|---|---|---|
Problema | Loto | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.46 kb |
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
int v[100],n,s;
int main(){
fin>>n>>s;
for(int i=1;i<=n;i++){fin>>v[i];}
sort(v+1,v+n+1);
if(v[n]*6<s){fout<<"-1";return 0;}
if(v[1]*6>s){fout<<"-1";return 0;}
int v1[1001],c=0;
for(int i=n;i>=1;i--){
while(s>v[i]){s-=v[i];v1[++c]=v[i];}
}
if(s<=v[1]&&s!=0){fout<<s;}
for(int i=c;i>=1;i--){fout<<v1[i]<<" ";}
return 0;
}