Pagini recente » Cod sursa (job #3273567) | Cod sursa (job #1437936) | Cod sursa (job #1979182) | Cod sursa (job #1049191) | Cod sursa (job #3239363)
#include <fstream>
using namespace std;
ifstream cin("oz.in");
ofstream cout("oz.out");
struct numar
{
int a,b,d;
}v[100005];
int n,m,x[10005];
int cmmdc(int a,int b)
{
while(b!=0)
{
int r=a%b;
a=b;
b=r;
}
return a;
}
int main()
{
cin>>n>>m;
for(int i=1;i<=m;i++)
cin>>v[i].a>>v[i].b>>v[i].d;
for(int i=1;i<=n;i++)
x[i]=1;
for(int i=1;i<=m;i++)
{
x[v[i].a]=v[i].d/cmmdc(x[v[i].a],v[i].d)*x[v[i].a];
x[v[i].b]=v[i].d/cmmdc(x[v[i].b],v[i].d)*x[v[i].b];
}
for(int i=1;i<=m;i++)
if(cmmdc(x[v[i].a],x[v[i].b])!=v[i].d)
{
cout<<-1;
return 0;
}
for(int i=1;i<=n;i++)
cout<<x[i]<<" ";
return 0;
}