Cod sursa(job #2531040)

Utilizator lucaperjuLuca Perju Verzotti lucaperju Data 25 ianuarie 2020 16:21:34
Problema Oz Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin ("oz.in");
ofstream cout ("oz.out");
long long cmmdc (long long a, long long b)
{
	long long r;
	while(b)
	{
		r=a%b;
		a=b;
		b=r;
	}
	return a;
}
long long cmmmc (long long a, long long b)
{
	return a*b/cmmdc(a,b);
}
long long v[10003];
int ta[100003],tb[100003],tc[100003];
int main()
{
    int n,m,i,j,start,fin;
    cin>>n>>m;
    for(i=1;i<=n;++i)
		v[i]=1;
	for(i=1;i<=m;++i)
	{
		long long a,b,c;
		cin>>a>>b>>c;
		v[a]=cmmmc(v[a],c);
		v[b]=cmmmc(v[b],c);
		ta[i]=a;
		tb[i]=b;
		tc[i]=c;
	}
	for(i=1;i<=m;++i)
	{
		if(cmmdc(v[ta[i]],v[tb[i]])!=tc[i])
		{
			cout<<-1;
			return 0;
		}
	}
	for(i=1;i<=n;++i)
		cout<<v[i]<<' ';
	return 0;
}