indexChar :: [Char] -> Int indexChar s = exmin [z - x + 1 | x <- clist, y <- wlist, x < y, z <- wlist, y < z] where clist = [x | x <- [0 .. length s - 1], (s !! x) == 'c'] wlist = [x | x <- [0 .. length s - 1], (s !! x) == 'w'] exmin [] = -1 exmin ar = minimum ar main :: IO () main = do x <- getLine let res = indexChar x print res