Cod sursa(job #2534761)

Utilizator rares_ciocieaRares Andrei Ciociea rares_ciociea Data 30 ianuarie 2020 22:00:00
Problema Oz Scor 55
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <fstream>

using namespace std;
ifstream in("oz.in");
ofstream out("oz.out");
int v[10001];
int cmmdc(int a,int b)
{
    int r;
    while(b)
    {
        r=a%b;
        a=b;
        b=r;
    }
    return a;
}
int cmmmc(int a,int b)
{
    return a*b/cmmdc(a,b);
}
int main()
{
    int n,m,a,b,x;
    in>>n>>m;
    for(int i=1;i<=n;i++)
        v[i]=1;
    for(int i=1;i<=m;i++)
    {
        in>>a>>b>>x;
        v[a]=cmmmc(v[a],x);
        v[b]=cmmmc(v[b],x);
    }
    in.close();
    ifstream in1("oz.in");
    in1>>n>>m;
    bool ok=1;
    for(int i=1;i<=m;i++)
    {
        in1>>a>>b>>x;
        if(cmmdc(v[a],v[b])!=x)
            ok=0;
    }
    if(ok==0)
        out<<-1;
    else
        for(int i=1;i<=n;i++)
            out<<v[i]<<" ";
    return 0;
}