Pagini recente » Cod sursa (job #3195214) | Cod sursa (job #1808251) | Cod sursa (job #573870) | Cod sursa (job #232553) | Cod sursa (job #2108381)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("oz.in");
ofstream fout("oz.out");
long n, m, i, j, v[10002], s, x, y, d, c[100002];
int a[100002], b[100002];
long cmmdc (long a, long b){
long r;
while(b){
r=a%b;
a=b;
b=r;
}
return a;
}
int main(){
fin>>n>>m;
for(i=1; i<=m; i++){
fin>>x>>y>>d;
a[i]=x;
b[i]=y;
c[i]=d;
if(v[x]==0)
v[x]=1;
if(v[y]==0)
v[y]=1;
v[x]=v[x]*(d/cmmdc(v[x], d));
v[y]=v[y]*(d/cmmdc(v[y], d));
}
for(i=1; i<=n; i++){
if (v[i]==0){
v[i]=1;
}
}
for(i=1; i<=m; i++){
if(cmmdc(v[a[i]], v[b[i]])!=c[i]){
fout<<-1;
return 0;
}
}
for(i=1; i<=n; i++){
fout<<v[i]<<" ";
}
}