Cod sursa(job #2663480)

Utilizator cezarinfoTulceanu Cezar cezarinfo Data 26 octombrie 2020 15:40:14
Problema Loto Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.05 kb
#include<cstdio>
#include<queue>
#include<map>
using namespace std;
FILE*in=fopen("loto.in","r");
FILE*out=fopen("loto.out","w");
int n,s,i,j,k,v[103];
struct ras
{
    int a,b,c;
};
ras mem;
map<int,bool> t;
map<int,ras> m;
int main()
{
    fscanf(in,"%d%d",&n,&s);
    for(i=1;i<=n;i++)
    {
        fscanf(in,"%d",&v[i]);
    }
    for(i=1;i<=n;i++)
    {
        for(j=i;j<=n;j++)
        {
            for(k=j;k<=n;k++)
            {
                mem.a=i;
                mem.b=j;
                mem.c=k;
                t[v[i]+v[j]+v[k]]=1;
                m[v[i]+v[j]+v[k]]=mem;
            }
        }
    }
    for(i=1;i<=n;i++)
    {
        for(j=i;j<=n;j++)
        {
            for(k=j;k<=n;k++)
            {
                if(t[s-v[i]-v[j]-v[k]]==1)
                {
                    mem=m[s-v[i]-v[j]-v[k]];
                    fprintf(out,"%d %d %d %d %d %d\n",i,j,k,mem.a,mem.b,mem.c);
                    return 0;
                }
            }
        }
    }
    fprintf(out,"-1\n");
}