結果

問題 No.3118 Increment or Multiply
ユーザー miya145592
提出日時 2025-04-21 00:24:44
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 613 bytes
コンパイル時間 275 ms
コンパイル使用メモリ 82,212 KB
実行使用メモリ 78,888 KB
最終ジャッジ日時 2025-04-21 00:24:49
合計ジャッジ時間 5,577 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 5 WA * 30
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
input = sys.stdin.readline
MOD = 998244353
T = int(input())
NA = [list(map(int, input().split())) for _ in range(T)]
for n, a in NA:
    if a==1:
        ans = (n-1)*n//2
        print(ans%MOD)
    else:
        y = n
        ans = 0
        m = []
        first = 1
        cnt = 0
        while y>0:
            x = y//a
            if first:
                ans += (n-(x+1))*(n-x)//2
                first = 0
            else:
                ans += (y-(x+1))*(y-x)//2
                ans += (y-x)*cnt + sum(m)
            m.append(y%a)
            y = x
            cnt += 1
        print(ans%MOD)
0