Пример #1
0
int main()
{
	phi_table(maxn);
	scanf("%lld %d", &N, &K);
	if (K == 1 || K == 3)
	{
		inv = get_inv(2);
	}
	else if (K == 2)
	{
		inv = get_inv(6);
	}
	else if (K == 4)
	{
		inv = get_inv(30);
	}
	else if (K == 5)
	{
		inv = get_inv(12);
	}
	long long ans = 0;
	for (int i = 1, j = N; i <= j; ++i, j = N / i)
	{
		printf("%lld %lld\n", pow_mod(i, K), euler_phi(N / i));
		ans = (ans + pow_mod(i, K) * euler_phi(N / i) % mod) % mod;
		ans = (ans + (sum(j, K) - sum(N / (i + 1), K)) * euler_phi(i) % mod) % mod;
	}
	if (ans < 0)
	{
		ans += mod;
	}
	printf("%lld\n", ans);
	return 0;
}
Пример #2
0
int main () {

	int n;
	phi_table();
	while (scanf ("%d", &n) && n) {
		int ans = 0;
		for (int i = 1; i <= n; i++)
			ans += phi[i];
		printf ("%d\n", 2 * ans - 1);
	}
}
Пример #3
0
int main()
{
	phi_table(maxn - 1);
	for (int i = 1; i < maxn; ++i)
	{
		phi[i] += phi[i - 1];
	}
	int T;
	scanf("%d", &T);
	while (T--)
	{
		int A, B, C, P;
		scanf("%d %d %d %d", &A, &B, &C, &P);
		P += (pow9(A % 9, B % 9) + 8) % 9 + 1;
		printf("%lld\n", phi[P / C]);
	}
	return 0;
}