Pagini recente » Cod sursa (job #571115) | Cod sursa (job #2104709) | Cod sursa (job #808027) | Cod sursa (job #1450959) | Cod sursa (job #475699)
Cod sursa(job #475699)
# include <cstdio>
typedef long long ll ;
const char FIN[] = "oz.in", FOU[] = "oz.out" ;
int S[10003] ;
int N, M ;
ll cmmdc ( ll A, ll B ) {
while ( B ) {
int rest = A % B ;
A = B ;
B = rest ;
}
return A ;
}
ll cmmmc ( ll A, ll B ) {
return A * B / cmmdc ( A, B ) ;
}
int main () {
freopen ( FIN, "r", stdin ) ;
freopen ( FOU, "w", stdout ) ;
scanf ( "%d %d", &N, &M ) ;
for ( int i = 1; i <= N; ++i ) {
S[i] = 1;
}
for ( int q = 1, i, j, d; q <= M; ++q ) {
scanf ( "%d %d %d", &i, &j, &d ) ;
S[i] = cmmmc ( S[i], d ) ;
S[j] = cmmmc ( S[j], d ) ;
}
freopen ( FIN, "r", stdin ) ;
scanf ( "%d %d", &N, &M ) ;
for ( int q = 1, i, j, d; q <= M; ++q ) {
scanf ( "%d %d %d", &i, &j, &d ) ;
if ( cmmdc ( S[i], S[j] ) != d ) {
printf ( "-1" ) ;
return 0 ;
}
}
for ( int i = 1; i <= N; ++i ) {
printf ( "%d ", S[i] ) ;
}
return 0;
}