Pagini recente » Cod sursa (job #854562) | Cod sursa (job #2942136) | Cod sursa (job #160784) | Cod sursa (job #1098322) | Cod sursa (job #856890)
Cod sursa(job #856890)
#include <fstream>
#include <vector>
#define NMAX 102
#define SMAX 600000
using namespace std;
using namespace __gnu_cxx;
ifstream f("loto.in");
ofstream g("loto.out");
typedef struct points {int a,b,c;} POINTS;
vector <int> sol;
vector <POINTS> hash[SMAX];
vector <POINTS>::iterator it;
int V[NMAX],N,S,sumah,suma;
int main()
{
int i,j,k,suma;
f>>N>>S;
for (int i=1;i<=N;i++)
f>>V[i];
for (int i=1;i<=N;i++)
for (int j=1;j<=N;j++)
for (int k=1;k<=N;k++)
{
suma=V[i]+V[j]+V[k];
if (suma<=S)
hash[suma].push_back({i,j,k});
}
for (int i=1;i<=N;i++)
for (int j=1;j<=N;j++)
for (int k=1;k<=N;k++)
{
suma=V[i]+V[j]+V[k];
suma=S-suma;
for (it=hash[suma].begin();it!=hash[suma].end();it++)
{
if (V[(*it).a]+V[(*it).b]+V[(*it).c]==suma) {
g<<V[i]<<" "<<V[j]<<" "<<V[k]<<" "<<V[(*it).a]<<" "<<V[(*it).b]<<" "<<V[(*it).c];
return 0;
}
}
}
return 0;
}