Cod sursa(job #179609)

Utilizator nightwachComanescu Mircea nightwach Data 16 aprilie 2008 10:14:58
Problema Loto Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.62 kb
#include <stdio.h>
long n,s,b[128],ss;
long (*a)[4]=new long[350000][4];
int main(void)
{
    long i,j,k,l;
    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++){
                     ss=b[i];
                    for(j=i;(j<n)&&(ss<=s);j++){
                                     ss=b[j]+b[i];
                                    for(k=j;(k<n)&&(ss<=s);k++)
                                                    {
                                                        a[l][0]=ss+b[k];
                                                        a[l][1]=i;
                                                        a[l][2]=j;
                                                        a[l++][3]=k;
                                                    //    printf("%ld ",a[l-1][0]);
                                                        }}}
    k=1;
    for(i=0;(i<l)&&k;i++)
    {
                         ss=s-a[i][0];
                    for(j=i;(j<l)&&k&&(a[j][0]<=ss);j++)
                                    if(ss==a[j][0])
                                                      k=0;
                                                      }
 //   printf("a %ld %ld",i,j);
   // scanf("%ld",&n);
    i--;j--;
    if(k)
    {
            fprintf(f,"-1");
            fclose(f);
            return 0;
            }
    fprintf(f,"%ld %ld %ld %ld %ld %ld",b[a[i][1]],b[a[i][2]],b[a[i][3]],b[a[j][1]],b[a[j][2]],b[a[j][3]]);
    fclose(f);
    
    return 0;
}