結果

問題 No.3332 Consecutive Power Sum (Small)
コンテスト
ユーザー kokonotsu
提出日時 2025-11-02 23:09:18
言語 PyPy3
(7.3.15)
結果
TLE  
実行時間 -
コード長 826 bytes
コンパイル時間 366 ms
コンパイル使用メモリ 82,276 KB
実行使用メモリ 491,892 KB
最終ジャッジ日時 2025-11-02 23:09:23
合計ジャッジ時間 4,308 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1 TLE * 1
other -- * 52
権限があれば一括ダウンロードができます

ソースコード

diff #

N = int(input())

C = 0
ans = []

for X in range(1, 2 * 10**6):
    Y = 2 * N // X
    if X * Y == 2 * N:
        if (X - Y + 1) % 2 == 0 and (X + Y - 1) % 2 == 0:
            L = (X - Y + 1) // 2
            R = (X + Y - 1) // 2
            if 0 < L <= R and R > 0:
                C += 1
                ans.append((1, L, R))

for e in range(2, 40):
    d = {0:0}
    rev = {0:0}
    tmp = 0
    for i in range(1, 10 ** 6 + 1):
        y = pow(i, e) - d[i - 1]
        if y > N:
            break

        p = d[i-1] + pow(i, e)
        d[i] = p
        rev[p] = i
        tmp = i

    for l in range(1, tmp + 1):
        p = pow(l, e)
        if p > N:
            break

        x = N + d[l-1]

        if x in rev:
            C += 1
            ans.append((e, l, rev[x]))

print(C)
ans.sort()
for a in ans:
    print(*a)
0