Pagini recente » Cod sursa (job #2722624) | Cod sursa (job #2385586) | Cod sursa (job #3121741) | Cod sursa (job #2930073) | Cod sursa (job #3239318)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("oz.in");
ofstream fout("oz.out");
int n,m,i,j,x,y,d,sol[10001];
struct haha{
int x,y,d;
}v[100001];
int cmmdc(int a,int b){
int r;
while(b!=0){
r = a%b;
a = b;
b = r;
}
return a;
}
int main()
{
fin>>n>>m;
for(i=1;i<=m;i++)
fin>>v[i].x>>v[i].y>>v[i].d;
for(i=0;i<=n;i++) sol[i]=1;
for(i=1;i<=m;i++){
sol[v[i].x] *= v[i].d / cmmdc(v[i].d,sol[v[i].x]);
sol[v[i].y] *= v[i].d / cmmdc(v[i].d,sol[v[i].y]);
}
for(i=1;i<=m;i++){
if(cmmdc(sol[v[i].x],sol[v[i].y]) != v[i].d){
fout<<-1;
return 0;
}
}
for(i=1;i<=n;i++)
fout<<sol[i]<<' ';
return 0;
}