Cod sursa(job #177196)

Utilizator mihaidutescuDutescu Mihai mihaidutescu Data 12 aprilie 2008 13:56:52
Problema Oz Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<fstream.h>
#include<stdio.h>
#include<string.h>
#include<ctype.h>
int main()
{
long n,m,x,y,z,j,h,c1=1,c2=1;
int i;
FILE *f,*g;
f=fopen("oz.in","r");
g=fopen("oz.out","w");
fscanf(f,"%ld",&n);
long a['n'+1];
for(i=1;i<=n;i++)
 a[i]=1;
fscanf(f,"%ld",&m);
for(i=1;i<=m;i++)
{
 fscanf(f,"%ld",&x);
 fscanf(f,"%ld",&y);
 fscanf(f,"%ld",&z);
 if(a[x]>a[y])
  h=a[y];
 else
  h=a[x];
 for(j=h;j>z;j--)
  if(a[x]%j==0&&a[y]%j==0)
  c1=c2=0;
 if(c1==1)
 {
  a[x]=a[x]*z;
  a[y]=a[y]*z;
 }
 else
 break;
}
if(c2==0)
 fprintf(g,"%d",-1);
else
 for(i=1;i<=n;i++)
  fprintf(g,"%ld%c",a[i],' ');
return(0);
}