2 つの文字列 (文字列 x と文字列 y など) を受け取り、最初の文字列 (文字列 x) の末尾にある要素の数を返し、2 番目の文字列 (2 番目の y) の先頭と重複する関数を定義するにはどうすればよいでしょうか。
文字列が別の文字列にあるかどうかをチェックし、そうでない場合は True を返し、そうでない場合は False を返すため、プレリュードの isPrefixOf を使用してこれを行うことをお勧めします。しかし、重複する要素の数のカウントを返す方法に少し混乱しています。あなたが問題にどのようにアプローチすると思うかに基づいて、いくつかの疑似コードを書きました。
countElements :: Eq a => (Str a, Str a) -> Int
countElements (x,y) =
if x `isPrefixOf` y == True
then return the count of how many elements overlap
otherwise 0
サンプル出力は次のようになります。
countElements (board, directors) = 1
countElements (bend, ending) = 3
ここで何か助けはありますか?私は Haskell コードを書くのが苦手です。