あなたの仕事は、与えられたターゲット文字列を作成することです。空の文字列から始めて、文字列が目的のものと同じになるまで、文字を追加する必要があります。コストxを使用して文字列の末尾に文字を追加するか、コストyを使用して文字列を複製できます。私たちが望むのは、これを行う最も安価な方法です。
テストケース
targetString , appendcost, clonecost -> totalcost
"bb", 1, 2 -> 2
"bbbb", 2, 3 -> 7
"xzxpcxzxpy", 10, 11 -> 71
"abababab", 3, 5 -> 16
"abababab", 3, 11 -> 23
1
コストはどのように定義されていますか?正の整数ですか?
—
アーナルド
あなたはコードゴルフ(最短コード)チャレンジに挑戦しているだけだと思うので、別のスコアリング方法を示すコードチャレンジとプログラミングパズルタグを削除しました。
—
-xnor
すべてのテストケースで機能するが一般的に最適ではない優れたヒューリスティックを備えたプログラムを誰かが作成できる可能性が高いため、テストケースを増やすと役立つと思います。特に、テストケースのいずれにも、複数のクローン、または先頭にない部分文字列のクローンはありません。コストだけを変えると生産量が変わる例もあれば良いと思います。
—
xnor
ちなみに、素敵な最初の挑戦!
—
エリックアウトゴルファー
単一の文字を複製することは、依然として複製操作と見なされますか?
—
digEmAll