結果

問題 No.2567 A_1 > A_2 > ... > A_N
ユーザー chaemon
提出日時 2023-12-02 16:16:50
言語 Nim
(2.2.0)
結果
AC  
実行時間 190 ms / 2,000 ms
コード長 15,672 bytes
コンパイル時間 4,374 ms
コンパイル使用メモリ 94,464 KB
実行使用メモリ 10,112 KB
最終ジャッジ日時 2024-09-26 20:04:50
合計ジャッジ時間 6,915 ms
ジャッジサーバーID
(参考情報)
judge4 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 16
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

import macros
macro Please(x): untyped = nnkStmtList.newTree()
Please use Nim-ACL
Please use Nim-ACL
Please use Nim-ACL
static:
when not defined SecondCompile:
# md5sum: bbba72c9e28039f4c2e0c617a8fc6527 atcoder.tar.xz
template getFileName():string = instantiationInfo().filename
let fn = getFileName()
block:
let (output, ex) = gorgeEx("if [ -e ./atcoder ]; then exit 1; else exit 0; fi")
# doAssert ex == 0, "atcoder directory already exisits"
discard staticExec("echo \"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
        /KnlnfQC6P8Lya+pEEANKBSfYYVd/T6d
        +KZku85kMcJa2t1DbaUrYyCLI1K7FPQxRwjqTgiNZnthdG7SsCwtpmDkwrzTe8DAf0RZPcLKDI6k5ldCAAE6gwWheov21wu9xsdb0YmnpikSKlWlcP+b1XpN5n29w2FOqnM
        /opDpKimvAGGuPU4hXC6lAZ8Nrw3jRb81Voraf7hOxh3Bm34DNxm2djR7DnlTXzhU2FKrAo8YtCNGguSh2Fh6rwDmTcbxWkU58pbiQloUztb/GksE2ylVHuPRPG7Ut
        +YveDUUWOTdogMzTH4+V22CHTxwo3zI9Hay9FUs2TtoHKoKLaVC+AD3U763yEBsWrJ63+RVUthvPGVBaqJIbz4spFsP2uV7JWkd8WZ/vylc8ejg6T0658I+R1brEyiGu
        +UfxMQqUuqzJoM7+dLUoHfCGUQb94JBCnlIesYez4NboQlWgtRFKFEGxO0i5Fq3dcQGa0GDpj7FCCX7l8daKqG/+DZcW7inIuvD4J/kmYB3BxPeETaTmLp+P6LrBcXA6ihpgPPWjZr8xOo
        +hI/3ZBRY5cGpM5EKYy1YG839hEmBfynVm5gBhnKhcnLROZ813nwlxOvG/UuVMeDLJQFFm0u411gVH
        +B5fWi0nF5vDYFf6l7kFNUEtZPpEcZORgCPki1fnwB37mhOBuowoAi8OtaxlLANMAAcBQgOADAPowOIWxxGf7AgAAAAAEWVo=\" | base64 -d > atcoder.tar.xz && tar -Jxvf
        atcoder.tar.xz")<hide>
let (output, ex) = gorgeEx("nim cpp -d:release -d:SecondCompile -d:danger --path:./ --opt:speed --multimethods:on --warning[SmallLshouldNotBeUsed]
        :off --checks:off -o:a.out " & fn)
discard staticExec("rm -rf ./atcoder");doAssert ex == 0, output;quit(0)
when defined SecondCompile:
const DO_CHECK = false;const DEBUG = false
else:
const DO_CHECK = true;const DEBUG = true
const
USE_DEFAULT_TABLE = true
DO_TEST = false
# see https://github.com/zer0-star/Nim-ACL/tree/master/src/atcoder/extra/header/chaemon_header.nim
include atcoder/extra/header/chaemon_header
# see https://github.com/zer0-star/Nim-ACL/tree/master/src/atcoder/extra/other/binary_search.nim
import atcoder/extra/other/binary_search
proc solve() =
let T = nextInt()
proc solve1() =
var N, X = nextInt()
let S = (N * (N + 1)) div 2
if S > X:
echo -1;return
var A = Seq[int]
for i in N:
var M = if i == 0: 2 * 10^18 div N else: A[^1]
proc f(a:int):bool =
# A[i] = a
let n = N - i
# a, a - 1, ..., a - n + 1X
let S = ((a + a - n + 1) * n) div 2
return S >= X
let a = f.minLeft(1 .. M)
A.add a
X -= a
echo A.join(" ")
discard
for _ in T:
solve1()
discard
solve()
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0