Cod sursa(job #302566)

Utilizator stefynr8Space Monkey stefynr8 Data 9 aprilie 2009 00:00:20
Problema Loto Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.2 kb
#include<stdio.h>

int i,j,k,l,m,N,ok;
long v[101],x,s;

int cautare(int x, int st, int dr)   
{ int i1,j1,m;   
  i1=st; j1=dr;   
  while (i1<=j1) {   
        m=i1+(j1-i1)/2;   
    if (v[m]==x) return 1;   
     else if (v[m]<x) i1=m+1;   
       else j1=m-1;   
  }   
 
 return 0;
}

int main()
{
 freopen("bete2.in","r",stdin);   
 freopen("bete2.out","w",stdout);
 
 scanf("%d %d", &N, &s);
 
 do{
     ok=1;
     for(i=1;i<N;i++)
         if(v[i]>v[i+1]){
                         ok=0;
                         v[0]=v[i];
                         v[i]=v[i+1];
                         v[i+1]=v[0];
                         }
                         
     }while(!ok);
 
 for(i=1;i<=N;i++)
      for(j=1;j<=N;j++)
         for(k=1;k<=N;k++)
             for(l=1;l<=N;l++)
                 for(m=1;m<=N;m++)
                    {
                     x=s-v[i]-v[j]-v[k]-v[l]-v[m];
                     if(cautare(x,1,N)){
                                        printf("%ld %ld %ld %ld %ld %ld\n",v[i],v[j],v[k],v[l],v[m],x);
                                        return 0;
                                        }
                     }
 printf("-1");
 return 0;
}