Cod sursa(job #770596)

Utilizator ContraPunctContrapunct ContraPunct Data 23 iulie 2012 15:10:45
Problema Fractii Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include<cstdio>
int n;
long long rez; 
int ciur[100001];
void ReadData(){
    freopen("fractii.in","r",stdin);
    scanf("%d",&n);
    //rez = 2 * n - 1;
}

void Init(){
    for(int i=1;i<=n;++i)
        ciur[i] = i-1;
}

void Ciur(){
    int i,j;
    for(i=2;i<=n;++i){
        for(j=i+i;j<=n;j+=i)
            ciur[j] = ciur[j] - ciur[i];
        rez += ciur[i];
    }
}

void WriteData(){
    freopen("fractii.out","w",stdout);
    rez = rez * 2 + 1;
    printf("%lld\n",rez);
}

int main(){
    ReadData();
    Init();
    Ciur();
    WriteData();
    return 0;
}