結果

問題 No.1383 Numbers of Product
コンテスト
ユーザー H3PO4
提出日時 2021-02-07 21:26:08
言語 PyPy3
(7.3.17)
コンパイル:
pypy3 -mpy_compile _filename_
実行:
pypy3 _filename_
結果
WA  
実行時間 -
コード長 851 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 202 ms
コンパイル使用メモリ 85,120 KB
実行使用メモリ 342,592 KB
最終ジャッジ日時 2026-03-25 22:31:55
合計ジャッジ時間 61,490 ms
ジャッジサーバーID
(参考情報)
judge3_1 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 10 WA * 41
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

from collections import defaultdict

N, K, M = map(int, input().split())

# b >= 2の場合
d = defaultdict(int)
for a in range(1, 10 ** 6):
    tmp = a * (a + K)
    d[tmp] += 1
    for b in range(2, 50):
        tmp *= a + b * K
        if tmp > N:
            break
        d[tmp] += 1

d = dict(d)
twos = 0
for x in d:
    l, r = 0, 10 ** 9
    while r - l > 1:
        m = (r + l) // 2
        if m * (m + K) > x:
            r = m
        else:
            l = m
    if l * (l + K) == x:
        d[x] += 1
        if x <= N:
            twos += 1
if M == 1:
    l, r = 0, 10 ** 9
    while r - l > 1:
        m = (r + l) // 2
        if m * (m + K) > N:
            r = m
        else:
            l = m
    ans = l - twos + 1
else:
    # すでにdictにないやつは考えなくてよい
    ans = sum(v == M for v in d.values())
print(ans)
0