Cod sursa(job #179599)

Utilizator nightwachComanescu Mircea nightwach Data 16 aprilie 2008 09:48:43
Problema Loto Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 2.19 kb
#include <stdio.h>
long n,s,b[128];
long *a=new long[350000];
int main(void)
{
    long i,j,k,l,x,y;
    FILE *f;
    f=fopen("loto.in","rt");
    fscanf(f,"%ld %ld",&n,&s);
    for(i=0;i<n;i++)
                    fscanf(f,"%ld",&b[i]);
    l=0;
    fclose(f);
    f=fopen("loto.out","wt");
    for(i=0;i<n;i++)
                    for(j=i;j<n;j++)
                                    for(k=j;k<n;k++)
                                                    {
                                                        a[l++]=b[i]+b[j]+b[k];
                                                        }
    k=1;
    for(i=0;(i<l)&&k;i++)
                    for(j=i;(j<l)&&k;j++)
                                    if(s==(a[i]+a[j]))
                                                      k=0;
    
    i--;j--;
    if(k)
    {
            fprintf(f,"-1");
            fclose(f);
            return 0;
            }
    for(k=0;(i!=-1)||(j!=-1);k++)
                    for(x=k;(x<n)&&((i!=-1)||(j!=-1));x++)
                                    for(y=x;(y<n)&&((i!=-1)||(j!=-1));y++)
                                    {
                                                    if(i!=-1)
                                                    if(a[i]==(b[k]+b[x]+y[b]))
                                                    {
                                                                              fprintf(f,"%ld %ld %ld ",b[k],b[x],b[y]);
                                                                              i=-1;
                                                                              }
                                                    if(j!=-1)
                                                    if(a[j]==(b[k]+b[x]+b[y]))
                                                    {
                                                                              fprintf(f,"%ld %ld %ld ",b[k],b[x],b[y]);
                                                                              j=-1;
                                                                              }
                                                                              }
    fclose(f);
    
    return 0;
}