結果
| 問題 | No.2085 Directed Complete Graph |
| ユーザー |
👑 SPD_9X2
|
| 提出日時 | 2023-05-11 23:47:00 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 307 ms / 2,000 ms |
| コード長 | 801 bytes |
| コンパイル時間 | 301 ms |
| コンパイル使用メモリ | 82,560 KB |
| 実行使用メモリ | 93,884 KB |
| 平均クエリ数 | 2458.59 |
| 最終ジャッジ日時 | 2024-11-27 19:20:37 |
| 合計ジャッジ時間 | 6,343 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 15 |
ソースコード
"""
https://yukicoder.me/problems/no/2085
これは典型!
マージソートだけど、回数足りるのか…?
"""
import sys
from sys import stdin
from collections import deque
import heapq
N = int(stdin.readline())
q = []
for i in range(N):
heapq.heappush(q, [1,[i+1]])
while len(q) > 1:
_,A = heapq.heappop(q)
_,B = heapq.heappop(q)
A = deque(A)
B = deque(B)
C = []
while A and B:
print ("?",A[0],B[0],flush=True)
cat = int(stdin.readline())
if cat == 1:
C.append(A.popleft())
else:
C.append(B.popleft())
while A:
C.append(A.popleft())
while B:
C.append(B.popleft())
heapq.heappush(q, [len(C),C])
print ("!")
print (len(q[0][1])-1)
print (*q[0][1])
SPD_9X2