haskell продублировать буквы в строке

Рейтинг: -7Ответов: 1Опубликовано: 24.06.2023

Функция f типа Char -> String -> String , которая принимает на вход строку и символ и возвращает строку, в которой продублированы все вхождения символа. Пример: f ’о' "Hello world!" должно возвращать "Helloо woоrld!".

Ответы

▲ 1Принят

Ну.. Вышло как то так...

duplicateChars :: Char -> String -> String
duplicateChars c target = concatMap (\i -> if i == c then replicate 2 i else [i]) target

main :: IO ()
main = putStrLn $ duplicateChars 'o' "Hello world!"