Pagini recente » Cod sursa (job #2063748) | Cod sursa (job #1069509) | Cod sursa (job #1075016) | Cod sursa (job #2727525) | Cod sursa (job #488480)
Cod sursa(job #488480)
#include<fstream>
#define dmax 10010
#define dmax2 100010
using namespace std;
long long n,m,ok;
long long t1[dmax2],t2[dmax2],d[dmax2];
long long v[dmax];
long long cmmdc(long long a, long long b)
{
long long r;
while (b!=0)
{
r=a%b; a=b; b=r;
}
return a;
}
int main()
{
long 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;
}