土下座しながら探索中

主に競技プログラミング

2013-09-18から1日間の記事一覧

AOJ 1320 : City Merger

問題リンク:City Merger | Aizu Online Judge 解法: 巡回セールスマン問題みたいであったcost[i][j] := 文字列jを文字列iの後ろにつなげてできる文字列の長さから文字列iの長さを引いた値dp[1 for i 0..n // 初期化 これ以外はinf dp[1<<i][i] = s[i].length() //s[i] は 文字列i for S i 0..(1<<n)-1 for from 0..n //状態Sでfromからtoへ行く if !((S>>from) & 1) //まだ</i][i]>…