Pagini recente » Cod sursa (job #2263540) | Cod sursa (job #2808265) | Cod sursa (job #166900) | Cod sursa (job #1645773) | Cod sursa (job #1571515)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("oz.in");
ofstream fout("oz.out");
const int NMAX = 10005;
const long long INF = 2000000000;
int V[NMAX];
int cmmdc(int x,int y){
if(y == 0)
return x;
cmmdc(y,x%y);
}
int main()
{
int n,m,x,y,d,ok = 1,a,b;
fin >> n >> m;
for(int i = 1; i <= n; i++)
V[i] = 1;
for(int i = 1; i <= m ; i++){
fin >> x >> y >> d;
a = d/cmmdc(V[x],d);
b = d/cmmdc(V[y],d);
if(V[x] % d != 0 && (1LL*V[x]*a) <= INF )
V[x] *= a;
if(V[y] % d != 0 && (1LL*V[y]*b) <= INF )
V[y] *= b;
if((1LL*V[x]*a) > INF || (1LL*V[y]*b) > INF){
i = m + 1;
ok = 0;
}
}
if(ok == 1)
for(int i = 1; i <= n;i++)
fout << V[i] << " ";
else
fout << -1;
return 0;
}