Pagini recente » Cod sursa (job #1655510) | Cod sursa (job #2512210) | Cod sursa (job #2952194) | Cod sursa (job #216612) | Cod sursa (job #166905)
Cod sursa(job #166905)
/*#include<fstream.h>
long cmmdc(long tz, long sh)
{
long r;
do {
r=tz%sh;
tz=sh;
sh=r;
}while (r);
return tz;
}
long x[10001]={1};
int main()
{
int a1[100001]={1},a2[100001]={1},i,j,d,d2[100001],n,m,aux1,aux2;
ifstream f("oz.in");
f>>n>>m;
for (i=1;i<=m;i++)
{
f>>a1[i]>>a2[i]>>d2[i];
d=d2[i];
aux1=x[a1[i]];
aux2=x[a2[i]];
x[a1[i]]*=d/cmmdc(aux1,d);
x[a2[i]]*=d2[i]/cmmdc(aux2,d);
}
int ind=1;
for (i=1;i<=m;i++)
{
if (cmmdc(x[a1[i]],x[a2[i]])!=d2[i])
{
ind=0;
i=100100;
}
}
f.close();
ofstream g("oz.out");
if (ind) for (i=1;i<=n;i++) g<<x[i]<<" ";
else g<<"-1";
g<<'\n';
g.close();
return 0;
}
*/
#include<fstream.h>
long x[10001],a1[100001],a2[100001],i,j,cmmdc1,cmmdc2[100001],n,m,aux1,aux2;
long cmmdc(long tz, long sh)
{
long r;
do {
r=tz%sh;
tz=sh;
sh=r;
}while (r);
return tz;
}
int main()
{
ifstream f("oz.in");
f>>n>>m;
for (i=1;i<=n;i++)x[i]=1;
for (i=1;i<=m;i++)
{
f>>a1[i]>>a2[i]>>cmmdc2[i];
cmmdc1=cmmdc2[i];
aux1=x[a1[i]];
aux2=x[a2[i]];
x[a1[i]]*=cmmdc1/cmmdc(x[a1[i]],cmmdc1);
x[a2[i]]*=cmmdc2[i]/cmmdc(x[a2[i]],cmmdc2[i]);
}
int ind=1;
for (i=1;i<=m;i++)
{
if (cmmdc(x[a1[i]],x[a2[i]])!=cmmdc2[i])
{
ind=0;
i=100100;
}
}
f.close();
ofstream g("oz.out");
if (ind) for (i=1;i<=n;i++)g<<x[i]<<" ";
else g<<"-1";
g<<'\n';
g.close();
return 0;
}