Pagini recente » Cod sursa (job #2694967) | Cod sursa (job #2044984) | Cod sursa (job #573054) | Cod sursa (job #1497489) | Cod sursa (job #207969)
Cod sursa(job #207969)
#include<stdio.h>
int v[1000003]={0};
int cmmdc(int a, int b){
if(b==0) return a;
return cmmdc(b, a%b);
}
int increase(int a, int b){
if(cmmdc(a, b)==1) return 1;
else return 0;}
int f(int n, int k){
int s=0;
for(int i=1; i<=n; ++i)
if(v[i]==0)
for(int j=0; i+k*j<=n;++j){
v[i+k*j]=1;
s=s+increase(i, k);}
for(int i=1; i<=n; ++i)
v[i]=0;
return s;
}
int main(){
freopen("fractii.in", "r", stdin);
freopen("fractii.out", "w", stdout);
int n;
int s=0;
scanf("%d", &n);
for(int i=1; i<=n; ++i){
s=s+f(n, i);}
printf("%d", s);
return 0;}