Pagini recente » Cod sursa (job #2830415) | Cod sursa (job #2204721) | Cod sursa (job #631027) | Cod sursa (job #2634127) | Cod sursa (job #2658128)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("oz.in");
ofstream fout("oz.out");
long long n,m,a[10001];
struct t{
long x,y,d;
}v[100001];
long long CMMDC(int a,int b)
{
int r;
while(b)
{
r=a%b;
a=b;
b=r;
}
return a;
}
int main()
{
fin>>n>>m;
for(int i=1;i<=n;i++)a[i]++;
for(int i=1;i<=m;i++)
{
fin>>v[i].x>>v[i].y>>v[i].d;
a[v[i].x]=(a[v[i].x]*v[i].d)/CMMDC(a[v[i].x],v[i].d);
a[v[i].y]=(a[v[i].y]*v[i].d)/CMMDC(a[v[i].y],v[i].d);
}
bool ok=1;
for(int i=1;i<=n;i++)
{
if(a[i]<0 || a[i]>2000000000){ok=0;break;}
}
if(ok)
for(int i=1;i<=m;i++)
{
if(CMMDC(a[v[i].x],a[v[i].y])!=v[i].d){ok=0;break;}
}
if(ok)
{
for(int i=1;i<=n;i++)
fout<<a[i]<<" ";
fout<<'\n';
}
else fout<<'-1'<<'\n';
return 0;
}