예제 #1
0
파일: 811.cpp 프로젝트: holdzhu/ACM-Source
int main()
{
	calcprime();
	calcmu();
	memset(g, -1, sizeof g);
	g[1] = 1;
	long long N;
	scanf("%lld %d", &N, &K);
	long long ans = 0;
	for (int i = 1; i <= N; ++i)
	{
		ans += N / i * N / i % mod * getG(i) % mod;
		ans %= mod;
	}
	printf("%lld\n", ans);
	return 0;
}
예제 #2
0
// returns true iff n is a smith number
int is(ll n){
    
    if (n < sizeof(notprime)&&!notprime[n])return 0;
   
    return calcprime(n)  == calc(n);
}