画个图,然后发现没一个点可以被看见的前提就是横坐标和纵坐标互素,ok,套一个欧拉函数就好了
#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
int n;
int phi[40005];
void work(){
phi[1]=1;
for(int i=2;i<=n;i++){
if(!phi[i])
for(int j=i;j<=n;j+=i){
if(!phi[j])phi[j]=j;
phi[j]=phi[j]/i*(i-1);
}
}
}
int main(){
scanf("%d",&n);
work();
long long ans=0;
for(int i=1;i<=n-1;i++)ans+=(long long)phi[i];
printf("%lld",2*ans+1);
return 0;
}