SRM 551 250pt : ColorfulChocolates
問題概要
文字列Sが与えられる。隣接する文字を高々M回までswapできるとき、連続する同じ文字の長さの最大値を求める問題。
解法
最長なswap後の文字列を考えると、どれか一文字は動いていないと思ってよい。そうでないものも作れるが、固定した場合よりもよくはならないことが分かる。なので、固定する文字を全探索して、左側と右側に同じ文字列をk個つなげるのに必要なコストを求め、左右の和がMを越えないような最長の結合を調べればよい。
SRM 551 450pt : ColorfulWolves
問題概要
最短路を求める問題。200でよいと思う。