Pagini recente » Cod sursa (job #2430852) | Cod sursa (job #2894846) | Cod sursa (job #657531) | Cod sursa (job #956052) | Cod sursa (job #1971446)
#include<fstream>
using namespace std;
ifstream in("oz.in");
ofstream out("oz.out");
long long n,k,i,v[10001],a,b,x,r,ok,c,d;
pair<pair<long long,long long>,long long>w[100001];
int main(){
in >>n >> k;
for( i = 1; i <= n; i ++ ){
v[i] = 1;
}
for( i = 1; i <=k; i ++ ){
in >> a >>b>>x;
c = v[a];
d = x;
while( c > 0 ){
r = d%c;
d = c;
c = r;
}
v[a] = v[a]/d*x;
c = v[b];
d = x;
while( c > 0 ){
r = d%c;
d = c;
c = r;
}
v[b] = v[b]/d*x;
w[i].first.first = a;
w[i].first.second =b;
w[i].second = x;
}
for( i = 1; i <=k; i ++ ){
a = v[w[i].first.first];
b = v[w[i].first.second];
while( b > 0 ){
r = a%b;
a = b;
b = r;
}
if( a != w[i].second ){
out << -1;
ok = 1;
break;
}
}
if( ok == 0 ){
for( i = 1; i <= n; i ++ ){
out<<v[i]<<" ";
}
}
}