以下のようなDPを考えます.

dp[si][sj][w]dp[si][sj][w]: Aliceが既に使ったカードの集合がsisi,Bobが既に使ったカードの集合がsjsj,AliceのポイントがBobのポイントをww上回った状態の通り数

bitDPを利用することにより,O(N222N)\mathrm{O}(N^22^{2N})で,任意のsisisjsjwwにおけるdp[si][sj][w]dp[si][sj][w]を全て求めることができます.

dp[2N1][2N1][w]dp[2^N-1][2^N-1][w]のうち,wwが正のものの合計が求める答えとなります.