結果
| 問題 | No.1260 たくさんの多項式 | 
| コンテスト | |
| ユーザー |  ayaoni | 
| 提出日時 | 2020-10-27 11:59:21 | 
| 言語 | PyPy3 (7.3.15) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 207 ms / 2,000 ms | 
| コード長 | 447 bytes | 
| コンパイル時間 | 257 ms | 
| コンパイル使用メモリ | 82,316 KB | 
| 実行使用メモリ | 75,904 KB | 
| 最終ジャッジ日時 | 2024-07-21 21:53:28 | 
| 合計ジャッジ時間 | 8,895 ms | 
| ジャッジサーバーID (参考情報) | judge4 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 61 | 
ソースコード
import sys
def I(): return int(sys.stdin.readline().rstrip())
N = I()
M = int(N**.5)
mod = 10**9+7
# Nのi進表記の桁和の総和
ans = 0
for i in range(2,M+1):
    a = N
    while a:
        ans += a % i
        a -= a % i
        a //= i
    ans %= mod
# N == q*i+r
for q in range(1,M+1):
    low,high = max(N//(q+1),M),N//q  # low < i <= high
    ans += (N+q)*(high-low)-q*(high*(high+1)//2-low*(low+1)//2)
    ans %= mod
print(ans)
            
            
            
        