Pagini recente » Cod sursa (job #2302008) | Cod sursa (job #535014) | Cod sursa (job #1212116) | Cod sursa (job #594799) | Cod sursa (job #1968213)
#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 ] / cmmdc( v[ q[i].a ], q[i].d ) * q[i].d;
v[ q[i].b ] = v[ q[i].b ] / cmmdc( v[ q[i].b ], q[i].d ) * 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;
}