| 比赛 | 
    20160316 | 
    评测结果 | 
    AAAAAAAAAA | 
    | 题目名称 | 
    打表 | 
    最终得分 | 
    100 | 
    | 用户昵称 | 
    Satoshi | 
    运行时间 | 
    0.004 s  | 
    | 代码语言 | 
    C++ | 
    内存使用 | 
    0.69 MiB  | 
    | 提交时间 | 
    2016-03-16 19:31:00 | 
显示代码纯文本
#include <fstream>
#include <algorithm>
#define N 50010
using namespace std;
ifstream in("sendtable.in");
ofstream out("sendtable.out");
typedef long long ll;
int prime[N]={0};
int phi[N]={0};
void FFT(int m)
{
	int i,j;
	for(i=1;i<=m;i++)
	{
		if(!phi[i])
		{
			for(j=i;j<=m;j+=i)
			{
				if(!phi[j])phi[j]=j;
				phi[j]=phi[j]/i*(i-1);
			}
		}
	}
	phi[1]=1;
}
void read()
{
	int i,n;
	ll sum=0;
	in>>n;
	FFT(n);
	//for(i=1;i<=n;i++)out<<phi[i]<<' ';
	//out<<endl;
	for(i=2;i<=n;i++)sum+=phi[i];
	sum*=2;
	sum+=1;
	out<<sum<<endl;
}
int main()
{
	read();
	return 0;
}