結果

問題 No.2078 魔抜けなパープル
ユーザー ntudantuda
提出日時 2022-09-29 21:04:49
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 507 bytes
コンパイル時間 255 ms
コンパイル使用メモリ 87,160 KB
実行使用メモリ 126,556 KB
最終ジャッジ日時 2023-08-24 05:02:49
合計ジャッジ時間 4,109 ms
ジャッジサーバーID
(参考情報)
judge15 / judge12
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 117 ms
79,920 KB
testcase_01 AC 546 ms
106,680 KB
testcase_02 WA -
testcase_03 AC 402 ms
101,624 KB
testcase_04 WA -
testcase_05 AC 388 ms
96,084 KB
testcase_06 AC 757 ms
126,556 KB
testcase_07 AC 237 ms
90,488 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import math
T = int(input())
for t in range(T):
    X , A = map(int,input().split())
    dp = [0] + [10**20] * A
    XB = int(X**0.5) + 10
    XA = min(max(1,A-2),max(1,int(X**0.5)-2))
    for i in range(A):
        flag = 0
        for j in range(XA,XB):
            if i + j > A:
                continue
            tmp = dp[i] + j * j + X
            if dp[i + j] > tmp:
                dp[i + j] = tmp
                flag = 1
        #if flag == 0:
        #    break
    #print(dp)
    print(dp[-1])
0