Pagini recente » Cod sursa (job #1006936) | Clasament pregatireoji_6 | Cod sursa (job #113969) | Cod sursa (job #2481421) | Cod sursa (job #809508)
Cod sursa(job #809508)
#include <fstream>
#include <stdlib.h>
using namespace std;
int n;
long int s, v[101],nr=0;
struct loto {int poz;long int sum;} a[1000001];
void sortare ()
{
int p, k;
k=1;
while (k)
{k=0;
for (int i=1;i<n;++i)
if (v[i]>v[i+1])
{
p=v[i+1];
v[i+1]=v[i];
v[i]=p;
k=1;
}
}
return;
}
void citire ()
{
ifstream d("loto.in");
d>>n>>s;
for (int i=1;i<=n;++i)
d>>v[i];
d.close();
}
void generare()
{
sortare();
int i , j , k;
for(i=1;i<=n;++i)
for(j=1;j<=n;j++)
for(k=1;k<=n;k++)
{ nr++;
a[nr].sum=v[i]+v[j]+v[k];
a[nr].poz=i*100+j*10+k;
}
}
void parc()
{
ofstream g("loto.out");
int j,i;
for(i=1;i<=nr;++i)
for(j=1;j<=nr;j++)
{
if(a[i].sum+a[j].sum==s)
{
g<<v[a[i].poz%10]<<" "; a[i].poz/=10;
g<<v[a[i].poz%10]<<" "; a[i].poz/=10;
g<<v[a[i].poz%10]<<" "; a[i].poz/=10;
g<<v[a[j].poz%10]<<" "; a[j].poz/=10;
g<<v[a[j].poz%10]<<" "; a[j].poz/=10;
g<<v[a[j].poz%10]<<" "; a[j].poz/=10;
return;
}
}
g<<"-1\n";
return;
}
int main()
{
citire();
generare();
parc();
return 0;
}