Pagini recente » Cod sursa (job #1109400) | Cod sursa (job #905487) | Cod sursa (job #2399125) | Cod sursa (job #1141529) | Cod sursa (job #3185037)
#include <fstream>
using namespace std;
ifstream fin ("oz.in");
ofstream fout ("oz.out");
int n,m,i;
struct el
{
int i,j;
long long nr;
};
el q[100001];
long long v[100001];
long long cmmdc (long long a,long long b)
{
int r;
while (b!=0)
{
r=a%b;
a=b;
b=r;
}
return a;
}
long long cmmmc (long long a,long long b)
{
return a/cmmdc (a,b)*b;
}
int main ()
{
fin>>n>>m;
for (i=1; i<=n; i++)
v[i]=1;
for (i=1; i<=m; i++)
{
fin>>q[i].i>>q[i].j>>q[i].nr;
v[q[i].i]=cmmmc (v[q[i].i],q[i].nr);
v[q[i].j]=cmmmc (v[q[i].j],q[i].nr);
}
for (i=1; i<=m; i++)
{
if (cmmdc (v[q[i].i],v[q[i].j])!=q[i].nr)
{
fout<<-1;
return 0;
}
}
for (i=1; i<=n; i++)
fout<<v[i]<<" ";
return 0;
}