Cod sursa(job #198620)

Utilizator TrumpCardPopescu Silviu TrumpCard Data 13 iulie 2008 08:27:58
Problema Fractii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <stdio.h>
int a[1000001];
int main(int argc, char** argv) 
{  
  freopen("fractii.in", "r", stdin);
   long n;
   lon long nr=0;
   scanf("%ld", &n); fclose(stdin);
   for(int i=0;i<1000001;i++)a[i]=i;    
      for(int i=2;i<1000001;i++)    
          if(a[i]==i)    
          { for(int j=2;j*i<1000001;j++)a[j*i]=a[j*i]/i*(i-1);    
              a[i]=i-1;    
          }       
      
          
      nr=1;    
      for(int i=2;i<=n;i++)    
          {    
         nr+=2*a[i];}    
   freopen("fractii.out", "w", stdout);
   printf("%ld", nr); fclose(stdout);
   return 0;
}