Cod sursa(job #1465246)

Utilizator theep0Cruceru Radu theep0 Data 26 iulie 2015 20:28:04
Problema Loto Scor 5
Compilator c Status done
Runda Arhiva de probleme Marime 1.21 kb
#include <stdio.h>
#include <stdlib.h>

typedef struct _s {
    unsigned long v1, v2, v3, sum;
} s;

s sums[1000000];

int main() {
    int i, j, k, c = 0;
    int n, a[100];
    FILE *fi, *fo;
    unsigned long S;
    fi = freopen("loto.in", "r", stdin);
    fo = freopen("loto.out", "w", stdout);
    scanf("%d %lu", &n, &S);
    for (i = 0; i < n; i++) {
        scanf("%d", a + i);
    }

    if (6 * a[n-1] < S) {
        printf("-1\n");
        return 0;
    }
    for (i = 0; i < n; i++) {
        for (j = 0; j < n; j++) {
            for (k = 0; k < n; k++) {
                sums[c].v1 = a[i];
                sums[c].v2 = a[j];
                sums[c].v3 = a[k];
                sums[c].sum = a[i] + a[j] + a[k];
                c++;
            }
        }
    }

    k = 0;
    for (i = 0; i < c; i++) {
        for (j = i; j < c; j++) {
            if (sums[i].sum + sums[j].sum == S) {
                printf("%lu %lu %lu %lu %lu %lu\n", sums[i].v1, sums[i].v2, sums[i].v3, sums[j].v1, sums[i].v2, sums[i].v3);
                k = 1;
                break;
            }
        }
        if (k) {
            break;
        }
    }
    if (! k) {
        printf("-1\n");
    }

    fclose(fi);
    fclose(fo);
    return 0;
}