Pagini recente » Cod sursa (job #2076752) | Cod sursa (job #168058)
Cod sursa(job #168058)
#include<stdio.h>
FILE*fin=fopen("oz.in","r");
FILE*fout=fopen("oz.out","w");
int s[10001];
int cmmdc(int a,int b)
{
if(b!=0) return cmmdc(b,a%b);
return a;
}
int main()
{
int i,j,k,n,m,d,dd;
fscanf(fin,"%d%d",&n,&m);
for(i=1;i<=n;i++)
s[i]=1;
for(k=1;k<=m;k++)
{
fscanf(fin,"%d%d%d",&i,&j,&d);
dd=cmmdc(d,s[i]);
s[i]=d*s[i]/dd;
dd=cmmdc(d,s[j]);
s[j]=d*s[j]/dd;
}
fclose(fin);
FILE*fin=fopen("oz.in","r");
fscanf(fin,"%d%d",&n,&m);
for(k=1;k<=m;k++)
{
fscanf(fin,"%d%d%d",&i,&j,&d);
dd=cmmdc(s[i],s[j]);
if(dd!=d)
{
fprintf(fout,"-1");
fclose(fin);
fclose(fout);
return 0;
}
}
fclose(fin);
for(i=1;i<=n;i++)
fprintf(fout,"%d%c",s[i],' ');
fclose(fout);
return 0;
}