結果
| 問題 | No.3735 Offbeat Permutation Tree |
| コンテスト | |
| ユーザー |
convexineq
|
| 提出日時 | 2026-09-19 17:11:05 |
| 言語 | PyPy3 (7.3.23 + ACL) |
| 結果 |
WA
不安定
|
| 実行時間 | - |
| コード長 | 1,925 bytes |
| 記録 | |
| コンパイル時間 | 337 ms |
| コンパイル使用メモリ | 83,516 KB |
| 実行使用メモリ | 101,356 KB |
| 最終ジャッジ日時 | 2026-09-19 17:11:22 |
| 合計ジャッジ時間 | 6,561 ms |
|
ジャッジサーバーID (参考情報) |
judge2_0 / judge4_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 WA * 1 |
| other | AC * 34 RE * 1 |
ソースコード
import sys
readline = sys.stdin.readline
# T = int(readline())
# for _ in range(T):
# ans = solve()
# print(ans)
# n = int(readline())
# a = [int(i) for i in readline().split()]
# ab = [[int(i) for i in readline().split()] for _ in range()]
# S = readline().strip()
# b = [readline().strip() for _ in range()]
n = int(readline())
assert n != 3
if n <= 3:
print(-1)
def encode(x,y):
return x*n+y
def add1(d,t):
def move(delta):
nonlocal t
t += delta
rr.append(t)
rr = [t]
move(1)
move(-n)
move(-1)
move(-n)
move(1)
for _ in range(d):
move(-n)
move(-1)
for _ in range(d-1):
move(n)
move(-1)
for v,w in zip(rr,rr[1:]):
lst.append((v,w))
def add2(d,t):
def move(delta):
nonlocal t
t += delta
rr.append(t)
rr = [t]
move(-1)
move(-1)
move(-n)
move(-1)
move(n)
for _ in range(d):
move(-1)
move(-n)
for _ in range(d-1):
move(1)
move(-n)
for v,w in zip(rr,rr[1:]):
lst.append((v,w))
if n%2==0:
lst = [(0,n),(0,1),(1,n+1),(n+1,n+2),(n+2,n+3),(2,3),(3,n+3),(n+2,2*n+2),(2*n,2*n+1),(2*n+2,2*n+3),(2*n+2,3*n+2),(2*n,3*n),(2*n+3,3*n+3),(3*n,3*n+1),(3*n+1,3*n+2)]
for k in range(2,n//2):
add1(2*k-2,encode(2*k,2*k))
add2(2*k-2,encode(2*k+1,2*k+1))
#print(len(lst))
for i,j in lst:
print(i+1,j+1)
else:
lst = [(0,1),(0,n),(n,n+1),(n+1,n+2),(n+2,2),(2,3),(3,3+n),(3,4),(4,4+n),(4+n,4+2*n),(2*n+1,2*n+2),(2*n+2,2*n+3),(2*n+3,2*n+4),(3*n+2,4*n+2),(4*n+2,4*n+3),(4*n,4*n+1)]
for j in [0,1,3,4]:
for k in [2,3]:
lst += [(k*n+j,(k+1)*n+j)]
for k in range(2,n//2):
add1(2*k-1,encode(2*k+1,2*k+1))
add2(2*k-1,encode(2*k+2,2*k+2))
#print(len(lst))
for i,j in lst:
print(i+1,j+1)
convexineq