| 比赛 | 
    20160316 | 
    评测结果 | 
    AAAAAAAAAA | 
    | 题目名称 | 
    打表 | 
    最终得分 | 
    100 | 
    | 用户昵称 | 
    Zayin | 
    运行时间 | 
    0.009 s  | 
    | 代码语言 | 
    C++ | 
    内存使用 | 
    0.70 MiB  | 
    | 提交时间 | 
    2016-03-16 21:34:06 | 
显示代码纯文本
#include<cstdio> 
#include<cstring>
#include<iostream>
#include<algorithm>
#define maxn 50050
using namespace std;
typedef long long LL;
int n;
LL f[maxn],ans=1LL;
int main()
{
	freopen("sendtable.in","r",stdin);
	freopen("sendtable.out","w",stdout);
	cin>>n;
	for (int i=2;i<=n;++i)
		f[i]=(LL)i;
	for (int i=2;i<=n;++i)
	{
		if (f[i]==(LL)i)
		{
			for (int j=i;j<=n;j+=i)
				f[j]=f[j]/(LL)i*(LL)(i-1);
		}
		ans+=2LL*f[i];
	}
	cout<<ans<<endl;
	return 0;
}