Cod sursa(job #597166)
Utilizator | Data | 21 iunie 2011 12:18:57 | |
---|---|---|---|
Problema | Fractii | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.39 kb |
#include <fstream.h>
#include <math.h>
ifstream f("fractii.in");
ofstream g("fractii.out");
long long n,x,i,j;
bool uz[1000001];
unsigned long long S=0;
main(){
f>>n;
x=n-2;
S=2*n-1+2*(n/2+n%2-1)*abs(log2(n));
uz[1]=uz[2]=1;
for(i=4;i<=n;i*=2,x--)
uz[i]=1;
for(i=3;x>0;i++){
if(uz[i])
continue;
for(j=i;j<=n;j*=i,x--)
uz[j]=1;
S+=2*x;}
g<<S;}