結果
問題 | No.1737 One to N |
ユーザー | U S |
提出日時 | 2021-11-12 23:54:00 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 50 ms / 2,000 ms |
コード長 | 948 bytes |
コンパイル時間 | 148 ms |
コンパイル使用メモリ | 82,200 KB |
実行使用メモリ | 61,312 KB |
最終ジャッジ日時 | 2024-11-25 22:38:44 |
合計ジャッジ時間 | 2,538 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 27 |
ソースコード
# import sys # input = sys.stdin.readline def mp():return map(int,input().split()) def lmp():return list(map(int,input().split())) def mps(A):return [tuple(map(int, input().split())) for _ in range(A)] import math import bisect import heapq from copy import deepcopy as dc from itertools import accumulate from collections import Counter, defaultdict, deque def ceil(U,V):return (U+V-1)//V def modf1(N,MOD):return (N-1)%MOD+1 inf = int(1e20) mod = int(1e9+7) import time import copy def factorization(n): arr = [] temp = n for i in range(2, int(-(-n**0.5//1))+1): if temp%i==0: cnt=0 while temp%i==0: cnt+=1 temp //= i arr.append([i, cnt]) if temp!=1: arr.append([temp, 1]) if arr==[]: arr.append([n, 1]) return arr n = int(input()) u = factorization(n) ans = 0 if n == 1:print(0) else: for i,j in u:ans += i*j print(ans)