結果
| 問題 |
No.847 Divisors of Power
|
| コンテスト | |
| ユーザー |
tamato
|
| 提出日時 | 2020-03-20 20:15:52 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 73 ms / 2,000 ms |
| コード長 | 920 bytes |
| コンパイル時間 | 195 ms |
| コンパイル使用メモリ | 82,020 KB |
| 実行使用メモリ | 91,332 KB |
| 最終ジャッジ日時 | 2024-12-14 17:06:29 |
| 合計ジャッジ時間 | 2,727 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 26 |
ソースコード
def main():
import sys
input = sys.stdin.readline
def PrimeDecomposition(N):
ret = {}
n = int(N ** 0.5)
for d in range(2, n + 1):
while N % d == 0:
if d not in ret:
ret[d] = 1
else:
ret[d] += 1
N //= d
if N == 1:
break
if N != 1:
ret[N] = 1
return ret
N, K, M = map(int, input().split())
prime = PrimeDecomposition(N)
for p in prime:
prime[p] *= K
ans = [1]
for p in prime:
ans_new = []
for a in ans:
for k in range(prime[p]+1):
a_new = a * pow(p, k)
if a_new <= M:
ans_new.append(a_new)
else:
break
ans = ans_new
print(len(ans))
if __name__ == '__main__':
main()
tamato