Cod sursa(job #2850485)

Utilizator MateiStoianStoian Matei Octavian MateiStoian Data 16 februarie 2022 20:37:49
Problema Fractii Scor 30
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.6 kb
#include<iostream>
#include<stdio.h>
using namespace std;
int phi[1000004];
int n;
int main(){
    FILE *f = fopen("fractii.in","r");
    fscanf(f,"%d",&n);
    fclose(f);
    phi[1]=0;
    for(int i=2;i<=n;i++){
        phi[i]=i;
    }
    for(int i=2;i<=n;i++){
        if(phi[i] == i){
            phi[i]--;
            for(int j=2;i*j<=n;j++){
                phi[i*j]=phi[i*j]/i*(i-1);
            }
        }
    }
    int s=0;
    FILE *g = fopen("fractii.out","w");
    for(int i=1;i<=n;i++){
        s+=phi[i];
    }
    fprintf(g,"%d",s*2+1);
    fclose(g);
    return 0;
}