G - 221 Substring 解説
by
Tamiji
純粋な「連続部分列の個数」に帰着する方法です。
公式解説の \(T\) において \(0\) であるところを、 \(1,2,\dots,9\) でない distinct な値にします(これを「悪い値」と呼びます)。
このとき、悪い値を含む列は、取り出した位置に応じて全て区別されます。これは、ある悪い値について、その元の index が一意に定まるためです。
よって答は、 \(T\) の連続部分列の個数から、 \(T\) の区間のうち悪い値を含むものの個数を引いたものです。
前者は有名問題であり、 このページ などで説明されています。後者は簡単に求めることができるので省略します。
投稿日時:
最終更新:
