Cod sursa(job #2912585)

Utilizator AnnieMyaAnamaria Ordace AnnieMya Data 9 iulie 2022 13:02:56
Problema Fractii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.8 kb
// Online C++ compiler to run C++ program online
#include <iostream>
#include <fstream>
using namespace std;

int fi[1000000];
long long int s;

int main() {
    // Write C++ code here
    //std::cout << "Hello world!";
    int n,i,j;
    ifstream fin ("fractii.in");
    fin >> n;
    fin.close();
    if(n>=2)
        s=1;
    for(i=4;i<=n;i+=2)
        fi[i]=i/2;
    for(i=3;i<=n;i++)
        if(fi[i]==0)
        {
            s+=i-1;
            for (j=2*i;j<=n;j+=i)
                {
                    if(fi[j]==0)
                        fi[j]=j;
                    fi[j]/=i;
                    fi[j]*=i-1;
                }
        }
        else
            s+=fi[i];
    s*=2;
    s+=1;
    ofstream fout ("fractii.out");
    fout <<s;
    fout.close();
    return 0;
}