Cod sursa(job #2040261)

Utilizator Dinu2005Dinu I Dinu2005 Data 15 octombrie 2017 16:13:45
Problema Loto Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <iostream>
#include <fstream>
#include<unordered_map>
using namespace std;
struct loto{
    int nr1,nr2,nr3;
    loto(){
    nr1=-1;
    nr2=-1;
    nr3=-1;
    }
    loto(int x1,int x2,int x3){
        nr1=x1;
        nr2=x2;
        nr3=x3;
    }
};
unordered_map <int,loto> m;
int a[105];
int main()
{
    ifstream cin("loto.in");
    ofstream cout("loto.out");
    int n,i,j,k,s;
    loto x;
    cin>>n>>s;
    cin>>a[1];
    for(i=2;i<=n;i++){
        cin>>a[i];
    }
    for(i=1;i<=n;i++){
        for(j=i;j<=n;j++)
            for(k=j;k<=n;k++){
                m[a[i]+a[j]+a[k]]=loto(a[i],a[j],a[k]);
                if(m[s-a[i]-a[j]-a[k]].nr1>=0){
                    cout<<a[i]<<" "<<a[j]<<" "<<a[k]<<" "<<m[s-a[i]-a[j]-a[k]].nr1<<" "<<m[s-a[i]-a[j]-a[k]].nr2<<" "<<m[s-a[i]-a[j]-a[k]].nr3;
                    return 0;
                }
            }
    }
    cout<<-1;
    return 0;
}