Pagini recente » Cod sursa (job #832461) | Cod sursa (job #233389) | Cod sursa (job #2633835) | Cod sursa (job #2188236) | Cod sursa (job #1968203)
#include<fstream>
#define DIM 10005
using namespace std;
ifstream fin("oz.in");
ofstream fout("oz.out");
int v[DIM], n, m;
struct query{
int a;
int b;
int d;
} q[DIM * 10];
int cmmdc( int x, int y ){
int r;
while( y != 0 ){
r = x % y;
x = y;
y = r;
}
return x;
}
int main(){
fin >> n >> m;
fill( v + 1, v + n + 1, 1 );
for( int i = 1; i <= m; i++ ){
fin >> q[i].a >> q[i].b >> q[i].d;
v[ q[i].a ] = v[ q[i].a ] * q[i].d / cmmdc( v[ q[i].a ], q[i].d );
v[ q[i].b ] = v[ q[i].b ] * q[i].d / cmmdc( v[ q[i].b ], q[i].d );
}
for( int i = 1; i <= m; i++ ){
if( cmmdc( v[ q[i].a ], v[ q[i].b ] ) != q[i].d ){
fout << "-1\n";
return 0;
}
}
for( int i = 1; i <= n; i++ ){
fout << v[i] << " ";
}
return 0;
}