2

長さの文字列があり1 <= |S| <= 100K (1 <= K <= 10)

この文字列にはdigits < Kと 疑問符が含まれています。これらの疑問符を に置き換えたいのですがdigits < K、隣り合う 2 つの数字が同じではありません。文字列は円形なので、次のようにすることはできません:1?1または11?.

結果の文字列は、辞書編集的に最小のものでなければなりません。

入力と出力の例

input:
K = 4
string = ?????

output:
01012

私は貪欲なアプローチを試みましたが、いくつかの未知のテストケースでは失敗します。dp アプローチが必要だと思いますが、状態を把握できず、純粋な再帰コードは間に合いません。

dp アプローチ、または貪欲に失敗するトリッキーなテスト ケースの助けはありますか?

ありがとう、

4

2 に答える 2

0

その単純なバックトラックのimo。なぜそれを貪欲またはダイナミックで複雑にするのか。

于 2012-06-07T05:52:23.470 に答える