Pagini recente » Cod sursa (job #1989427) | Cod sursa (job #997018) | Cod sursa (job #1500179) | Cod sursa (job #1253929) | Cod sursa (job #1562116)
#include <bits/stdc++.h>
using namespace std;
FILE*f=fopen("loto.in","r"),*g=fopen("loto.out","w");
int n, s;
int V[105], X[1000009], N[1000009][4];
void afisare(int x, int y)
{
fprintf(g, "%d %d %d %d %d %d", N[x][1], N[x][2], N[x][3], N[y][1], N[y][2], N[y][3]);
}
int main()
{
fscanf(f, "%d %d", &n, &s);
for(int i = 1; i <= n; i++)
{
fscanf(f, "%d", &V[i]);
}
int nr = 0;
for(int i = 1; i <= n; i++)
for(int j = 1; j <= n; j++)
for(int k = 1; k <= n; k++)
{
nr++;
X[nr] = V[i]+V[j]+V[k];
N[nr][1] = i;
N[nr][2] = j;
N[nr][3] = k;
}
sort(X+1, X+nr+1);
int p = 1, u = nr;
while(p <= u)
{
if(X[p] + X[u] == s)
{
afisare(p, u);
return 0;
}
if(X[p] + X[u] > s)
u++;
if(X[p] + X[u] < s)
p++;
}
fprintf(g,"-1");
return 0;
}