結果
問題 | No.2771 Personal Space |
ユーザー |
![]() |
提出日時 | 2024-06-03 19:08:03 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 1,081 ms / 2,000 ms |
コード長 | 1,142 bytes |
コンパイル時間 | 219 ms |
コンパイル使用メモリ | 82,436 KB |
実行使用メモリ | 129,724 KB |
最終ジャッジ日時 | 2024-12-23 10:41:08 |
合計ジャッジ時間 | 19,427 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 24 |
ソースコード
T=int(input())import heapqimport heapqfrom heapq import heappop,heappush,heapifyfrom sys import stdin, setrecursionlimitinput = stdin.readlinereadline = stdin.readlinem=-10**10for i in range(T):N,M=map(int, input().split())A=[];ans=[-1]*Nans[M-1]=1if M==1:l,r=2,Nd=r-l+1heapq.heappush(A,(d*m+l,l,r,d))elif M==N:l,r=1,N-1d=r-l+1heapq.heappush(A,(d*m+l,l,r,d))else:l,r=1,M-1d=M-1heapq.heappush(A,(d*m+l,l,r,d))l,r=M+1,Nd=N-Mheapq.heappush(A,(d*m+l,l,r,d))for i in range(N-1):d=heapq.heappop(A)c,l,r,_=dif l!=1 and r!=N:d=(l+r)//2ans[d-1]=i+2ll,rr=l,d-1if ll<=rr:dd=(rr-ll)//2+1heapq.heappush(A,(dd*m+ll,ll,rr,dd))ll,rr=d+1,rif ll<=rr:dd=(rr-ll)//2+1heapq.heappush(A,(dd*m+ll,ll,rr,dd))elif l==1:ans[l-1]=i+2ll,rr=2,rdd=(rr-ll)//2+1heapq.heappush(A,(dd*m+ll,ll,rr,dd))else:ans[r-1]=i+2ll,rr=l,r-1dd=(rr-ll)//2+1heapq.heappush(A,(dd*m+ll,ll,rr,dd))print(*ans)