\(x\) 回目と \(y\) 回目に出す手は \(x, y\) を \(K\) で割ったあまりが同じでなければ独立に決められる.

\(K\) で割ったあまりが \(i\) である順番については, この順番の中で \(j\) 回目に \(k\) を出したときの最大得点を \(D_i(j, k)\) とすると,

\[D_i(j, k) = \max_{l \neq k} (D_i(j-1, l) + W_i(j, k))\]

で求められる. ただし, \(W_i(j, l)\) は \(j\) 回目に \(l\) を出したときのスコアである.

これを DP で解く.