結果
問題 |
No.2716 Falcon Method
|
ユーザー |
👑 |
提出日時 | 2024-02-07 17:40:33 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 493 ms / 2,000 ms |
コード長 | 410 bytes |
コンパイル時間 | 295 ms |
コンパイル使用メモリ | 82,304 KB |
実行使用メモリ | 83,712 KB |
最終ジャッジ日時 | 2024-09-28 12:32:08 |
合計ジャッジ時間 | 8,758 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 28 |
ソースコード
I,R=input,range J=lambda:map(int,I().split()) N,Q=J() S=I() c=[0]*2 for s in S:c[s>'D']+=1 t=[[0]*(N*2+1)for b in R(2)] for b in R(2): for i in R(N*2):t[b][i+1]=t[b][i]+(S[i%N]=="DR"[b]) for q in R(Q): H=list(J()) P=H[2] d=[9**16]*2 for b in R(2): if c[b]: q=(H[b]-1)//c[b] l,r=P,P+N while l+1<r: m=(l+r)//2 if t[b][m]<H[b]+t[b][P]-q*c[b]:l=m else:r=m d[b]=q*N+r print(min(d)%N)