Pagini recente » Cod sursa (job #159272) | Cod sursa (job #507803) | Cod sursa (job #1918270) | Cod sursa (job #1047378) | Cod sursa (job #2873065)
#include <fstream>
using namespace std;
ifstream cin ("oz.in");
ofstream cout ("oz.out");
int n,m,i,j,k,v[10001],vi[100001],vj[100001],vk[100001];
int cmmdc (int x, int y)
{
int a=x,b=y;
if (a<b) swap(a,b);
int r=a%b;
while (r){
a=b;
b=r;
r=a%b;
}
return b;
}
int cmmmc (int a, int b)
{
return a/cmmdc(a,b)*b;
}
int main()
{
int n,m;
cin>>n>>m;
for (int I=1; I<=n; ++I) v[I]=1;
for (int I=1; I<=m; ++I){
cin>>i>>j>>k;
vi[I]=i;
vj[I]=j;
vk[I]=k;
v[vi[I]]=cmmmc(v[vi[I]],vk[I]);
v[vj[I]]=cmmmc(v[vj[I]],vk[I]);
}
for (int i=1; i<=m; ++i)
if (cmmdc(v[vi[i]],v[vj[i]])!=vk[i]){
cout<<-1;
return 0;
}
for (int i=1; i<=n; ++i) cout<<v[i]<<" ";
return 0;
}