前提・実現したいこと
以下の問題をPythonを使用して解くのですが、方針が思いつきません。
「会社の看板を作ることになったあなたは、看板に文字列を表示するため、各文字の印刷された小看板を別々に発注して組み合わせることにしました。しかし、発注後に表示する文字列に変更があり、小看板を再発注することになりました。
あなたは再発注する小看板の数を減らすため、共通する文字の小看板を再利用することを考えました。
例えば 文字列が "tokyo" から "osaka" へと変更された場合、共通する o, k の 2 文字の小看板を再利用することで再発注数を 3 つに減らすことができます。
入力として変更前後の文字列の長さおよび文字列自身が与えられます。
この再利用方法で再発注しなければならない最小の小看板の数を出力してください。」
入力される値
入力は標準入力にて以下のフォーマットで与えられます。
n m s t
1行目に変更前の文字列の長さ n と 変更後の文字列の長さ m が半角スペース区切りで与えられます。
2行目に変更前の文字列 s が与えられます。
3行目に変更後の文字列 t が与えられます。
入力は合計で 3行 となり、 最終行の末尾に改行が1つ入ります
条件
すべてのテストケースにおいて、以下の条件をみたします。
n, m は整数
1 ≦ n, m ≦ 100000
(sの長さ) = n, (tの長さ) = m
s, t は半角英字小文字のみで構成される文字列
再発注しなければならない最小の小看板の数を整数で出力してください。
最後は改行し、余計な文字、空行を含んではいけません。
入力例
3 5 ant maven
出力例
3
回答5件
あなたの回答
tips
プレビュー