Pagini recente » Cod sursa (job #256473) | Cod sursa (job #2593561) | Cod sursa (job #2441432) | Cod sursa (job #383441) | Cod sursa (job #2108388)
#include <fstream>
#define dim 2000000003
using namespace std;
int n, i, m, v[10003];
struct conditie{
int a;
int b;
int div;;
};
conditie p[100002];
ifstream fin("oz.in");
ofstream fout("oz.out");
int cmmdc(int a, int b){
int r = 0;
while(b!=0){
r=a%b;
a=b;
b=r;
}
return a;
}
int cmmmc(int a, int b){
return a*b/cmmdc(a, b);
}
int main(){
fin>>n>>m;
for(i=1;i<=n;i++)
v[i] = 1;
for(int t=1;t<=m;t++){
fin>>p[t].a>>p[t].b>>p[t].div;
v[p[t].a] = cmmmc(v[p[t].a], p[t].div);
v[p[t].b] = cmmmc(v[p[t].b], p[t].div);
}
for(i=1;i<=m;i++){
if(cmmdc(v[p[i].a], v[p[i].b]) != p[i].div){
fout<<-1;
return 0;
}
}
for(i=1;i<=n;i++)
fout<<v[i]<<" ";
return 0;
}