ICPCアジア地区つくば大会2017 B問題 : Parallel Lines

問題. Parallel Lines

2次元平面上に  m 個の点がある.どの点もちょうど1つの対に含まれるように,すべての点から  m / 2 個の対を作ることを考える.ここで,各対を対に含まれる2点を通る直線として考えると,いくつかの平行な直線に分割される.その分割の各部分の要素数 (n_1, n_2, \ldots, n_k) としたとき, \sum_{i=1}^{k} \binom{n_i}{2} の最大値を求めよ.

制約 2 \le m \le 16

解法. 全探索

ペアの選び方を全探索する.まだ選ばれていない点(添字が小さいもの)を任意に選び,その対となるものを全通り試すということを順番に行うと,計算時間は下のような式になり間に合う.また,固定する点を選ばれていない点で最小の添字のものとすると探索空間は小さくなる.

計算時間 : 最悪の場合  (m = 16)   15 \times 13 \times 11 \times 9 \times 7 \times 5 \times 3 \times (16 / 2)^2= 129,729,600

まとめ

方針から実装までに時間がかかった.