Cod sursa(job #238035)

Utilizator cosmin79Carabet Cosmin Andrei cosmin79 Data 31 decembrie 2008 11:33:33
Problema Oz Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <stdio.h>
int cmmdc(int a,int b)
{
	int r=a%b;
	while (r)
	{
		a=b;
		b=r;
		r=a%b;
	}
	return b;
}
int cmmmc(int a,int b)
{
	return (a*b/cmmdc(a,b));
}
int main()
{
	freopen("oz.in","r",stdin);
	freopen("oz.out","w",stdout);
	int n,m,i,j,d,r,a[10005],trisare=0;
	scanf("%d%d",&n,&m);
	for (i=1; i<=n; i++)
		a[i]=1;
	for (r=1; r<=m; r++)
	{
		scanf("%d%d%d",&i,&j,&d);
		a[i]=cmmmc(a[i],d);
		a[j]=cmmmc(a[j],d);
	}
	for (i=1; i<=n; i++)
		if (a[i]==1)
		{
			trisare=1;
			printf("-1");
			break;
		}
	if (trisare==0)
		for (i=1; i<=n; i++)
			printf("%d ",a[i]);
	return 0;
}