Pagini recente » Cod sursa (job #3272552) | Cod sursa (job #1478013) | Cod sursa (job #2910630) | Cod sursa (job #1709505) | Cod sursa (job #3132213)
#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;
#define nmax 101
int n, s, a[nmax] ,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;
}