Cod sursa(job #602875)

Utilizator ion824Ion Ureche ion824 Data 13 iulie 2011 16:41:44
Problema Loto Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <fstream>
#define nmax 20000000

using namespace std;
typedef struct { int a,b,c; } triplet;
triplet c[nmax];          
int a[101],sume[nmax],n,s;

int main(void){
    int i,j,k,nr;;
    ifstream fin("loto.in");
    ofstream fout("loto.out");
    fin>>n>>s; nr=0;
    for(i=1;i<=n;++i)fin>>a[i]; fin.close();
    for(i=1;i<=n;++i)
      for(j=i;j<=n;++j)
        for(k=j;k<=n;++k)
            sume[++nr]=(c[nr].a=a[i])+(c[nr].b=a[j])+(c[nr].c=a[k]); 
    i=1; j=nr;       
    while((sume[i]+sume[j]!=s) && (i<j))
                              if(sume[i]+sume[j]<s) ++i;
                                 else --j; 
    if (i<j) fout<<c[i].a<<" "<<c[i].b<<" "<<c[i].c<<" "<<c[j].a<<" "<<c[j].b<<" "<<c[j].c<<" ";
       else fout<<"-1";                                           
    fout.close();
 return 0;   
}