Pagini recente » Cod sursa (job #2042189) | Cod sursa (job #640908) | Cod sursa (job #2740249) | Cod sursa (job #1539320) | Cod sursa (job #1514406)
#include <stdio.h>
#include <algorithm>
FILE*fin=fopen("loto.in","r");
FILE*fout=fopen("loto.out","w");
using namespace std;
struct sum{
int x,y,z,s;
};
int compare(sum a,sum b)
{
if (a.s<b.s)return 1;
else return 0;
};
int n,s,i,k,j,y,a[1000001],x,vs[1000001],nr;
sum v[1000001];
int main()
{
fscanf (fin, "%d%d", &n , &s);
y=1;
for (i=1;i<=n;i++)fscanf (fin,"%d",&a[i]);
for (i=1;i<=n;i++)
for (j=1;j<=n;j++)
for (k=1;k<=n;k++)
{
v[y].x=i;
v[y].y=j;
v[y].z=k;
v[y].s=i+j+k;
vs[y]=v[y].s;
y++;
}
sort (v+1,v+y,compare);
n=y;y=1;
while (y<=n)
{
nr=s-v[y].s;
x=upper_bound(vs+1,vs+n,nr)-vs-1;
if (v[x].s==s-v[y].s)break;
y++;
}
if (y!=n+1)fprintf (fout , "%d %d %d %d %d %d \n",v[y].x,v[y].y,v[y].z,v[x].x,v[x].y,v[x].z);
else fscanf (fout,"-1 \n");
fclose(fin);fclose(fout);
return 0;
}