Pagini recente » Cod sursa (job #3273680) | Cod sursa (job #3000719) | Cod sursa (job #1691523) | Cod sursa (job #1964105) | Cod sursa (job #2635674)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin( "oz.in" );
ofstream fout( "oz.out" );
const int MaxN = 10001;
const int MaxM = 100001;
int v[MaxN];
int qi[MaxM], qj[MaxM], qd[MaxM];
int main() {
int n, m, i, a, b, d, ok;
fin >> n >> m;
for ( i = 0; i < n; ++i ) {
v[i] = 1;
}
for ( i = 0; i < m; ++i ) {
fin >> a >> b >> d;
--a;
--b;
v[a] *= (d / (__gcd( v[a], d )));
v[b] *= (d / (__gcd( v[b], d )));
qi[i] = a;
qj[i] = b;
qd[i] = d;
}
ok = 1;
for ( i = 0; i < m; ++i ) {
if ( __gcd( v[qi[i]], v[qj[i]] ) != qd[i] ) {
ok = 0;
}
}
if ( ok == 0 ) {
fout << "-1";
} else {
for ( i = 0; i < n; ++i ) {
fout << v[i] << " ";
}
}
fin.close();
fout.close();
return 0;
}