結果
問題 |
No.2567 A_1 > A_2 > ... > A_N
|
ユーザー |
![]() |
提出日時 | 2023-12-06 01:20:24 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 244 ms / 2,000 ms |
コード長 | 657 bytes |
コンパイル時間 | 4,173 ms |
コンパイル使用メモリ | 251,228 KB |
最終ジャッジ日時 | 2025-02-18 08:09:26 |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 16 |
ソースコード
#include <stdio.h> #include <atcoder/all> #include <bits/stdc++.h> using namespace std; using namespace atcoder; using mint = modint998244353; #define rep(i,n) for (int i = 0; i < (n); ++i) #define Inf32 1000000001 #define Inf64 4000000000000000001 long long sum(long long n){ return n*(n+1)/2; } int main(){ int _t; cin>>_t; rep(_,_t){ long long N,X; cin>>N>>X; vector<long long> ans(N); if(sum(N)>X){ cout<<-1<<endl; continue; } rep(i,N){ long long ii = N-i; long long rem = X - sum(ii); ans[i] = ii + (rem+ii-1)/ii; X -= ans[i]; } rep(i,N){ if(i!=0)cout<<' '; cout<<ans[i]; } cout<<endl; } return 0; }