概要
三色の石が一列に並んでおり、一番端の石の上に Liss が立っている。
Liss に色の sequence からなる支持を出す。
Liss は、指示一つ毎に、自分の居る石の色と指示の色が一致していれば、一つ進む。
それ以外の場合はその場に留まる。
全ての指示を受理し終わったあとの、Liss のいる場所を答えよ。
解法
そのままシミュレーション
コード
import Control.Applicative import Control.Monad import Data.List main = do s <- getLine t <- getLine print $ solve s t 1 solve :: String -> String -> Int -> Int solve [] _ cur = cur solve _ [] cur = cur solve s@(a:as) (b:bs) cur | a == b = solve as bs ( cur + 1 ) | otherwise = solve s bs cur