結果

問題 No.2567 A_1 > A_2 > ... > A_N
ユーザー 21kazu1321kazu13
提出日時 2023-12-04 15:55:04
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 287 ms / 2,000 ms
コード長 1,514 bytes
コンパイル時間 291 ms
コンパイル使用メモリ 82,432 KB
実行使用メモリ 86,424 KB
最終ジャッジ日時 2024-09-26 23:02:19
合計ジャッジ時間 4,740 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 71 ms
64,512 KB
testcase_01 AC 123 ms
83,876 KB
testcase_02 AC 129 ms
85,484 KB
testcase_03 AC 126 ms
85,632 KB
testcase_04 AC 126 ms
86,264 KB
testcase_05 AC 132 ms
86,424 KB
testcase_06 AC 263 ms
79,752 KB
testcase_07 AC 287 ms
79,820 KB
testcase_08 AC 261 ms
79,616 KB
testcase_09 AC 272 ms
80,260 KB
testcase_10 AC 267 ms
79,668 KB
testcase_11 AC 73 ms
65,920 KB
testcase_12 AC 86 ms
69,888 KB
testcase_13 AC 75 ms
65,664 KB
testcase_14 AC 71 ms
65,024 KB
testcase_15 AC 81 ms
69,248 KB
testcase_16 AC 75 ms
65,536 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

#!/usr/bin/env python3
import sys
from bisect import bisect_left, bisect_right, insort_left, insort_right  # type: ignore
from collections import Counter, defaultdict, deque  # type: ignore
from math import gcd, sqrt, ceil, factorial  # type: ignore
from heapq import heapify, heappop, heappush, heappushpop, heapreplace, merge  # type: ignore
from itertools import accumulate, combinations, permutations, product  # type: ignore
from string import ascii_lowercase, ascii_uppercase # type: ignore

def LI(): return list(map(int, sys.stdin.buffer.readline().split()))
def I(): return int(sys.stdin.buffer.readline())
def LS(): return sys.stdin.buffer.readline().rstrip().decode("utf-8").split()
def S(): return sys.stdin.buffer.readline().rstrip().decode("utf-8")
def IR(n): return [I() for _ in range(n)]
def LIR(n): return [LI() for _ in range(n)]
def SR(n): return [S() for _ in range(n)]
def LSR(n): return [LS() for _ in range(n)]
def SRL(n): return [list(S()) for _ in range(n)]

def solve(n,x):
    ret = x-sum(range(1,n))
    if ret>n-1:
        d = (ret-n+1)//n
        m = (ret-n+1)%n
        if m==0:
            m+=n
            d-=1
        if m<=2:
            ans = list(range(1+d,n+d))+[ret-d*(n-1)]
            return ans[::-1]
        else:
            ans = list(range(1+d,n+d))+[ret-d*(n-1)-(m-2)]
            for i in range(n-2,n-(m-2)-2,-1):
                ans[i]+=1
            return ans[::-1]
    else:
        return [-1]

T = I()
for _ in range(T):
    n,x = LI()
    print(*solve(n,x))
0