結果
| 問題 | No.3637 PANDORA |
| コンテスト | |
| ユーザー |
Tuchmos
|
| 提出日時 | 2026-08-25 14:52:21 |
| 言語 | PyPy3 (7.3.17) |
| 結果 |
RE
|
| 実行時間 | - |
| コード長 | 708 bytes |
| 記録 | |
| コンパイル時間 | 230 ms |
| コンパイル使用メモリ | 95,860 KB |
| 実行使用メモリ | 91,392 KB |
| 最終ジャッジ日時 | 2026-08-25 14:52:31 |
| 合計ジャッジ時間 | 8,375 ms |
|
ジャッジサーバーID (参考情報) |
judge3_0 / judge2_0 |
(要ログイン)
| サブタスク | 配点 | 結果 |
|---|---|---|
| サンプル | 0 % | RE * 2 |
| 小課題1 | 5 % | RE * 4 |
| 小課題2 | 10 % | RE * 4 |
| 小課題3 | 5 % | RE * 8 |
| 小課題4 | 10 % | RE * 5 |
| 小課題5 | 20 % | RE * 10 |
| 小課題6 | 20 % | RE * 16 |
| 小課題7 | 30 % | RE * 38 |
| 合計 | 0 点 |
ソースコード
from sortedcontainers import SortedSet
N,Q=map(int,input().split())
idx=[SortedSet() for i in range(26)]
S=input()
for i in range(N):
idx[ord(S[i])-97].add(i)
ans=[]
for _ in range(Q):
q=list(input().split())
if q[0]=='1':
i,c=q[1:]
i=int(i)-1
idx[ord(S[i])-97].remove(i)
idx[ord(c)-97].add(i)
else:
cur=-1
ok=True
t=q[1]
for i in range(len(t)):
nx=idx[ord(t[i])-97].bisect_right(cur)
if nx==len(idx[ord(t[i])-97]):
ok=False
break
cur=idx[ord(t[i])-97][nx]
ans.append("Yes" if ok else 'No')
import sys
sys.stdout.write('\n'.join(map(str,ans))+'\n')
Tuchmos