Pagini recente » Cod sursa (job #1337664) | Cod sursa (job #1964840) | Cod sursa (job #1299829) | Cod sursa (job #2802718) | Cod sursa (job #488477)
Cod sursa(job #488477)
#include<fstream>
#define dmax 10010
#define dmax2 100010
using namespace std;
long n,m,ok;
long t1[dmax2],t2[dmax2],d[dmax2];
long v[dmax];
long cmmdc(long a, long b)
{
long r;
while (b!=0)
{
r=a%b; a=b; b=r;
}
return a;
}
int main()
{
long i;
ifstream fin("oz.in");
fin>>n>>m;
for (i=1; i<=n; i++)
v[i]=1;
for (i=1; i<=m; i++)
{
fin>>t1[i]>>t2[i]>>d[i];
v[t1[i]]=(v[t1[i]]*d[i])/cmmdc(v[t1[i]],d[i]);
v[t2[i]]=(v[t2[i]]*d[i])/cmmdc(v[t2[i]],d[i]);
}
for (i=1; i<=n; i++)
if (v[i] > 2000000000)
{
ok=1; break;
}
for (i=1; i<=m; i++)
if (cmmdc(v[t1[i]],v[t2[i]])!=d[i])
{
ok=1; break;
}
ofstream fout("oz.out");
if (ok==1)
fout<<"-1"; else
for (i=1; i<=n; i++)
fout<<v[i]<<" ";
fin.close();
fout.close();
return 0;
}