公式
G - Greatest Bracket Sequence 解説
by
$O((N +Q)\log N)$ の解法
G - Greatest Bracket Sequence 解説
by
ynymxiaolongbao
$O((N +Q)\log N)$ の解法
SSRSさんの解説とs[l] < s[r], YがSに含まれる or notで分けるところは同じです。
答えは以下のように求まります
YがSに含まれる場合:以下のmax
- 右から、累積minを更新する点を列挙し、そのindexの差のmax
- 左から、累積minを更新する点を列挙し、そのindexの差のmax
- 最小値のうち、一番右のもののindex - 一番左のもののindex(後のケースの下位互換になっていて実は不要)
YがSに含まれない場合:
- 左端 … 最小値 + 増分(s[r] - s[l]) - 1 の値をもつものうち一番右のもの
- 右端 … 最小値のうち一番右のもの(+一周)
計算量は \(O((N +Q)\log N)\) です
投稿日時:
最終更新:
