Pagini recente » Cod sursa (job #315736) | Cod sursa (job #615751) | Cod sursa (job #461206) | Cod sursa (job #1218028) | Cod sursa (job #1156631)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("oz.in");
ofstream fout("oz.out");
#define MAX 10100
int cmmdc(int a, int b)
{
if(!b)
return a;
return cmmdc(b, a%b);
}
int cmmmc(int a, int b)
{
return a*b/cmmdc(a, b);
}
int a[MAX], x[MAX], y[MAX], d[MAX];
int main()
{
int n, m, i;
fin>>n>>m;
for(i=1;i<=m;i++)
{
fin>>x[i]>>y[i]>>d[i];
a[x[i]]=max(1, a[x[i]]);
a[y[i]]=max(1, a[y[i]]);
a[x[i]]=cmmmc(a[x[i]], d[i]);
a[y[i]]=cmmmc(a[y[i]], d[i]);
}
int dd=1;
for(i=1;i<=m;i++)
{
if(cmmdc(a[x[i]], a[y[i]])!=d[i])
dd=0;
}
if(!dd)
fout<<-1;
else
{
for(i=1;i<=n;i++)
{
fout<<a[i]<<" ";
}
}
fout<<"\n";
}