結果
| 問題 | No.3691 Calculate Mu Sum |
| コンテスト | |
| ユーザー |
cleantted
|
| 提出日時 | 2026-09-06 18:46:57 |
| 言語 | PyPy3 (7.3.23 + ACL) |
| 結果 |
AC
不安定
|
| 実行時間 | 850 ms / 2,000 ms |
| + 563µs | |
| コード長 | 1,643 bytes |
| 記録 | |
| コンパイル時間 | 242 ms |
| コンパイル使用メモリ | 96,072 KB |
| 実行使用メモリ | 203,660 KB |
| 最終ジャッジ日時 | 2026-09-06 18:47:08 |
| 合計ジャッジ時間 | 8,100 ms |
|
ジャッジサーバーID (参考情報) |
judge2_0 / judge1_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 11 |
ソースコード
import copy
import heapq
import itertools
import math
import operator
import sys
from bisect import bisect, bisect_left, bisect_right, insort
from collections import Counter, deque
from fractions import Fraction
from functools import cmp_to_key, lru_cache, partial
from inspect import currentframe
from math import ceil, gcd, log10, pi, sqrt
# import pypyjit
# pypyjit.set_param('max_unroll_recursion=-1')
input = sys.stdin.readline
sys.setrecursionlimit(10000000)
# mod = 10 ** 9 + 7
mod = 998244353
# mod = 1 << 128
# mod = 10 ** 30 + 1
INF = 1 << 61
DIFF = 10 ** -9
DX = [1, 0, -1, 0, 1, 1, -1, -1]
DY = [0, 1, 0, -1, 1, -1, 1, -1]
def read_values(): return tuple(map(int, input().split()))
def read_index(): return tuple(map(lambda x: int(x) - 1, input().split()))
def read_list(): return list(read_values())
def read_lists(N): return [read_list() for _ in range(N)]
def dprint(*values): print(*values, file=sys.stderr)
def create_primes(N):
F = [False] * (N + 1)
P = []
for p in range(2, N + 1):
if F[p]:
continue
P.append(p)
for i in range(p, N + 1, p):
F[i] = True
return P
def solve():
N = int(input())
P = create_primes(N + 10) + [N + 10]
def f(i, s, t):
r = t
for j in range(i, N):
p = P[j]
if s * p > N:
break
r += f(j + 1, s * p, t * -1)
return r
res = f(0, 1, 1)
return res
def main():
# T = int(input())
T = 1
res = []
for _ in range(T):
res.append(solve())
print(*res, sep="\n")
if __name__ == "__main__":
main()
cleantted