Pagini recente » Cod sursa (job #2686209) | Cod sursa (job #2598499) | Cod sursa (job #3203688) | concurs-mihai-patrascu-2013/clasament | Cod sursa (job #470544)
Cod sursa(job #470544)
#include <fstream>
using namespace std;
struct gcf{int a,b,d;} a[1<<17];
int v[1<<14],n,m;
ifstream in("oz.in");
ofstream out("oz.out");
int cmmdc(int a,int b)
{
int c;
while (b)
{
c=a%b;
a=b;
b=c;
}
return a;
}
inline int cmmmc(int a,int b)
{
return a/cmmdc(a,b)*b;
}
int main()
{
int i;
in>>n>>m;
for (i=1;i<=n;i++)
v[i]=1;
for (i=1;i<=m;i++)
{
in>>a[i].a>>a[i].b>>a[i].d;
v[a[i].a]=cmmmc(v[a[i].a],a[i].d);
v[a[i].b]=cmmmc(v[a[i].b],a[i].d);
}
for (i=1;i<=m;i++)
if (cmmdc(v[a[i].a],v[a[i].b])!=a[i].d)
{
out<<"-1\n";
return 0;
}
for (i=1;i<=n;i++)
out<<v[i]<<" ";
return 0;
}