Cod sursa(job #1295646)

Utilizator rangerChihai Mihai ranger Data 19 decembrie 2014 22:08:54
Problema Oz Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<fstream>
using namespace std;

const int N = 10010;

int a[N],i,n,m,x,y,d;

int cmmdc(int a,int b)
{
    return !b ? a : cmmdc(b,a%b);
}
int cmmmc(int a,int b)
{
    return a/cmmdc(a,b)*b;
}

int main()
{
    ifstream cin("oz.in");
    ofstream cout("oz.out");

    cin>>n>>m;
    for (i=1;i<=n;i++)a[i]=1;

    while (m--)
    {
        cin>>x>>y>>d;
        a[x]=cmmmc(a[x],d);
        a[y]=cmmmc(a[y],d);
    }
    ifstream fi("oz.in");
    fi>>n>>m;
    while (m--){
        fi>>x>>y>>d;
        if (cmmdc(a[x],a[y])!=d){
            cout<<-1;
            return 0;
        }
    }
    for (i=1;i<=n;i++)cout<<a[i]<<" ";
    return 0;
}