Pagini recente » Cod sursa (job #1754398) | Cod sursa (job #2984780) | Cod sursa (job #1193923) | Cod sursa (job #795412) | Cod sursa (job #2924101)
#include <fstream>
using namespace std;
ifstream fin("oz.in");
ofstream fout("oz.out");
typedef long long ll;
ll v[10000];
int v2[100000],v3[100000],v4[100000];
int cmmdc(int a,int b){
if(b != 0)return cmmdc(b,a%b);
return a;
}
ll cmmmc(ll a,ll b){
return a*b/cmmdc(a,b);
}
int main()
{
int n,m,a,b,x,i,ok = 1;
fin>>n>>m;
for(i = 0;i < n;i++)v[i] = 1;
for(i = 0;i < m && ok == 1;i++){
fin>>a>>b>>x;
a--;
b--;
v2[i] = a;
v3[i] = b;
v4[i] = x;
v[a] = cmmmc(v[a],x);
v[b] = cmmmc(v[b],x);
if(v[a] > 2e9 || v[b] > 2e9)ok = 0;
}
if(ok == 0)fout<<-1;
else{
for(i = 0;i < m;i++){
if(cmmdc(v[v2[i]],v[v3[i]]) != v4[i]){
ok = 0;
}
}
if(ok == 0)fout<<-1;
else{
for(i = 0;i < n;i++){
fout<<v[i]<<' ';
}
}
}
return 0;
}