Pagini recente » Cod sursa (job #3360959) | Cod sursa (job #3360958) | Cod sursa (job #3360968) | Cod sursa (job #3360967) | Cod sursa (job #3360977)
#include <fstream>
using namespace std;
ifstream fin("oz.in");
ofstream fout("oz.out");
int n,perechi;
long long v[10001];
struct triplet{
int x,y;
long long d;
};
triplet a[100001];
long long cmmdc(long long a,long long b){
long long 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>>perechi;
for(int i=1;i<=n;i++)
v[i]=1;
for(int i=1;i<=perechi;i++){
fin>>a[i].x>>a[i].y>>a[i].d;
int x=a[i].x;
int y=a[i].y;
v[x]=cmmmc(v[x],a[i].d);
v[y]=cmmmc(v[y],a[i].d);
}
for(int i=1;i<=perechi;i++){
int x=a[i].x;
int y=a[i].y;
if(cmmdc(v[x],v[y])!=a[i].d){
fout<<-1;
return 0;
}
}
for(int i=1;i<=n;i++)
fout<<v[i]<<" ";
return 0;
}