Cod sursa(job #3241)

Utilizator rchioreanRadu Chiorean rchiorean Data 22 decembrie 2006 16:19:40
Problema Fractii Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <stdio.h>
#define read  fscanf
#define write fprintf
FILE *f;
long v[1000000],w[1000000],i,n,j;
long long s;
int main(void){
 f = fopen("fractii.in", "rt");
 read(f , "%ld", &n);
 for(i=1;i<=n;i++){v[i]=i; w[i] = i;}
 for(i=1;i<=n-1;i++)
  if((w[i] == i)&&(v[i]!=1)){
  w[i] = v[i] -1;
  for(j=i+1;j<=n;j++)
   if(v[j] % v[i] ==0){w[j] = w[j] / v[i]; w[j] = w[j] * (v[i]-1);}
    }
 for(i=2;i<=n;i++){s = s+ w[i];}
 fclose(f);
 f= fopen("fractii.out", "wt");
 write(f, "%lld", 1+2*s);
 fclose(f);
    return 0;
}