Pagini recente » Cod sursa (job #2969511) | Cod sursa (job #3238557) | Cod sursa (job #589604) | Cod sursa (job #1031262) | Cod sursa (job #3132195)
#include<ext/hash_set>
#include <bits/stdc++.h>
using namespace std;
ifstream f("loto.in");
ofstream r("loto.out");
vector<int> fin;
__gnu_cxx::hash_set<int> h;
int n, s, a[101],sw=0;
int main() {
int i, j, k, suma;
for(i=1; i<=n; i++)
{
f>>a[i];
}
for(i=1; i<=n; i++)
for(j=1; j<=n; j++)
for(k=1; k<=n; k++) {
suma = a[i] + a[j] + a[k];
if(suma < s)
h.insert(suma);
}
suma = -1;
for(i=1; i<=n; i++)
for(j=1; j<=n; j++)
for(k=1; k<=n; k++) {
suma = a[i] + a[j] + a[k];
if(h.find(s-suma) != h.end()) {
fin.push_back(a[i]);
fin.push_back(a[j]);
fin.push_back(a[k]);
s=s-suma;
i = n+1;
j=n+1;
k=n+1;
}
}
for(i=1; i<=n; i++)
for(j=1; j<=n; j++)
for(k=1; k<=n; k++) {
suma = a[i] + a[j] + a[k];
if(s == suma) {
r<<a[i]<<' '<<a[j]<<' '<<a[k]<<' ';
for(vector<int>:: iterator m=fin.begin(); m!=fin.end(); ++m)
r<<*m;
sw=1;
}
}
if (!sw)
{
r<<-1;
}
return 0;
}