Pagini recente » Cod sursa (job #412402) | Cod sursa (job #2179515) | Cod sursa (job #2939201) | Cod sursa (job #3163601) | Cod sursa (job #164402)
Cod sursa(job #164402)
#include <stdio.h>
#include <stdlib.h>
#define lim 2000000000
#define mx 100010
long i,n,m,ok;
long x[mx],y[mx],a[mx];
long long d[mx];
long long cmmdc(long a, long b)
{
long c;
while (b>0)
{
c=a%b;
a=b;
b=c;
}
return a;
}
void iesire(int ok)
{
if (ok==1)
{
printf("-1");
exit 0;
}
}
int main()
{
freopen("oz.in","r",stdin);
freopen("oz.out","w",stdout);
scanf("%ld %ld",&n,&m);
ok=0;
for (i=1; i<=m; i++)
{
scanf("%ld %ld %lld",&x[i],&y[i],&d[i]);
a[x[i]]=a[x[i]]*(d/cmmdc(a[x[i]],d[i]));
a[y[i]]=a[y[i]]*(d/cmmdc(a[x[i]],d[i]));
if (a[x[i]]>lim || a[y[i]]>lim)
ok=1;
}
iesire(ok);
for (i=1; i<=m; i++)
if (cmmdc(a[x[i]],a[y[i]])!=d)
ok=1;
iesire(ok);
for (i=1; i<=n; i++)
printf("%ld",&a[i]);
fclose(stdin);
fclose(stdout);
return 0;
}