Pagini recente » Cod sursa (job #2397515) | Cod sursa (job #2045299) | Cod sursa (job #1586302) | Cod sursa (job #2065992) | Cod sursa (job #1971431)
#include<fstream>
using namespace std;
ifstream in("oz.in");
ofstream out("oz.out");
int n,k,i,v[10001],a,b,x,r,ok,c,d;
pair<pair<int,int>,int>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[k].first.first = a;
w[k].first.second =b;
w[k].second = x;
}
for( i = 1; i <=k; i ++ ){
a = v[w[k].first.first];
b = v[w[k].first.second];
while( b > 0 ){
r = a%b;
a = b;
b = r;
}
if( a != w[k].second ){
out<<-1;
ok =1;
break;
}
}
if( ok == 0 ){
for( i = 1; i <= n; i ++ ){
out<<v[i]<<" ";
}
}
}