Cod sursa(job #340590)

Utilizator ncbllrNegrii Costin ncbllr Data 15 august 2009 15:53:24
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <stdio.h>   
#include <stdlib.h>   
long *p,*s,i,j,n;   
double sum=0;   
  
int main(char *argv[],int argc)   
{   
    FILE *f;   
    f=fopen("fractii.in","rt");   
    fscanf(f,"%d",&n);   
    fclose(f);   
    s=(long*)malloc(n*sizeof(long));   
    p=(long*)malloc(n*sizeof(long));   
    for(i=0;i<=n;i++)   
    {   
        *(s+i)=0;   
        *(p+i)=i;   
    }   
    if (n==1) sum=1;   
    else{   
    for(j=2;j<=n;j++)   
        if(*(s+j)==0)   
        {   
            for(i=j;i<=n;i+=j)   
            {   
                *(s+i)=1;   
                *(p+i)=((*(p+i))/j)*(j-1);   
            }   
        }   
    for(i=2;i<=n;i++)   
        sum+=(*(p+i));   
    sum=sum*2+1;}   
    f=fopen("fractii.out","wt");   
    fprintf(f,"%.0lf",sum);   
    fclose(f);   
    return 0;   
}