結果
| 問題 | No.3782 Synchronized Subsequences |
| コンテスト | |
| ユーザー |
kidodesu
|
| 提出日時 | 2026-11-05 17:38:10 |
| 言語 | PyPy3 (8.0.1 + ACL) |
| 結果 |
AC
不安定
|
| 実行時間 | 2,100 ms / 3,000 ms |
| + 869µs | |
| コード長 | 846 bytes |
| 記録 | |
| コンパイル時間 | 79 ms |
| コンパイル使用メモリ | 64,580 KB |
| 実行使用メモリ | 128,488 KB |
| 最終ジャッジ日時 | 2026-11-05 17:39:00 |
| 合計ジャッジ時間 | 47,491 ms |
|
ジャッジサーバーID (参考情報) |
judge7_0 / judge4_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | AC * 40 |
ソースコード
from atcoder.segtree import SegTree
def main():
n = int(input())
P = list(map(lambda x: int(x)-1, input().split()))
Q = list(map(lambda x: int(x)-1, input().split()))
st = SegTree(lambda a, b: max(a, b), 0, [0]*2*n*n)
#st1 = SegTree(lambda a, b: max(a, b), 0, [0]*n*n)
ans = 0
N = n*n
for pi in range(n):
st_ = SegTree(lambda a, b: max(a, b), 0, [0]*2*n)
for qi in range(n):
p, q = P[pi], Q[qi]
a = st.prod(2*qi*n+p, 2*qi*n+n+p)+1
ans = max(ans, a)
st_.set(q, a)
st_.set(n+q, a)
x, y = st_.prod(q+1, n), st_.prod(n, n+q)
#print(p, q, x, y, a, "here", *[st1_.get(i) for i in range(n)])
st.set(2*qi*n+p, x)
st.set(2*qi*n+n+p, y)
return ans
for _ in range(int(input())):
print(main())
kidodesu