Pagini recente » Cod sursa (job #1937388) | Cod sursa (job #1601068) | Cod sursa (job #1917079) | Cod sursa (job #2202224) | Cod sursa (job #1218487)
#include <fstream>
#define NR 100005
using namespace std;
int n,m,i,A[NR],B[NR],a,b;
long long V[NR],D[NR],d;
ifstream f("oz.in");
ofstream g("oz.out");
long long cmmdc(long long x, long long y) {
long long r;
while(y) {
r=x%y;
x=y;
y=r;
}
return x;
}
long long cmmmc(long long x, long long y) {
long long p=x*y;
p=p/cmmdc(x,y);
return p;
}
int main() {
f>>n>>m;
for(i=1;i<=n;i++)
V[i]=1;
for(i=1;i<=m;i++) {
f>>a>>b>>d;
A[i]=a;
B[i]=b;
D[i]=d;
V[a] = cmmmc(V[a],d);
V[b] = cmmmc(V[b],d);
}
bool ok=1;
for(i=1;i<=m && ok;i++)
if(cmmdc(V[A[i]],V[B[i]]) != D[i])
ok=0;
if(ok)
for(i=1;i<=n;i++)
g<<V[i]<<" ";
else
g<<"-1\n";
return 0;
}