1
パリンドロームによるストリングのカバー
w = σ1σ2… σnw=σ1σ2…σnw=\sigma_1\sigma_2\ldots\sigma_np1p2⋯ pmp1p2⋯pmp_1p_2\cdots p_mのp私p私p_ip1p2⋯ pm= wp1p2⋯pm=wp_1p_2\cdots p_m = wp私p私p_i パリンドロームの最小サイズのカバーを見つけるのはどれくらい難しいですか?(これは動的プログラミングで実行可能と思われますが、動作するかどうかはわかりません)。 bbb 単純な欲張りアルゴリズムを考えてみましょう。これは、常に現在の位置から始まる最長の回文を取ります。たとえば、場合w = 1213312w=1213312w=1213312(121 )⋅ (33 )⋅ (1 )⋅ (2 )(121)⋅(33)⋅(1)⋅(2)(121)\cdot(33)\cdot(1)\cdot(2)、最適なカバーは (1 )⋅ (213312 )(1)⋅(213312)(1)\cdot(213312)。 貪欲なアルゴリズムは問題の2近似を提供しますか?