#iroha2019day4g. [iroha2019_day4_g]真実の魔法陣
[iroha2019_day4_g]真実の魔法陣
ストーリー
「これは…?」そこに着いた僕たちが見たものは、魔法陣のようなものだった。かすれて、ところどころ欠けていて、不完全なのは誰の目にも明らかだった。
今までの僕なら、これを直さずにここで帰っていたかもしれない。でも今は───"真実"が、知りたい。
問題文
あなたの目の前には、巨大な円が描かれています。あなたはこの円を使って、魔法陣を完成させる必要があります。
魔法陣とは、 個の点が円周上に等間隔に並び、 個のペアに分けて線分を引いたかたちをしているものです。
円周上には 個の点が等間隔に並んでおり、ある点を基準にして時計回りに から までの番号が付けられています。
目の前の 個の点のうち、いくつかの点はすでにペアが決まっており線分で結ばれていますが、いくつかの点はペアが決まっていません。あなたはそれらのペアの組み方を決めて、魔法陣を完成させる必要があります。
魔法陣の複雑さを「円の中で交差している線分のペアの個数」として定めたとき、 あなたは出来上がる魔法陣の複雑さを出来るだけ小さくしたいです。
魔法陣の複雑さが最小になるようなペアの作り方が何通りあるか求め、 で割った余りを求めてください。
制約
- 入力はすべて整数
- はすべて異なる
入力
一行目に、魔法陣のサイズ と、既に組まれているペアの個数 が与えられます。
続く 行に、既に組まれているペアが与えられます。
出力
答えを出力してください。
入力例 1
3 0
出力例 1
5
魔法陣の複雑さの最小値はです。
線分がひとつも交差しないようなペアの組み方は通りあります。
入力例 2
7 3
1 13
3 11
9 4
出力例 2
4
複雑さの最小値はです。 複雑さを達成するペアの組み方は以下の通りです。
・
・
・
・
入力例 3
30 15
44 36
1 11
53 21
38 52
8 22
26 42
35 2
23 37
30 58
18 17
3 33
51 9
39 14
12 41
4 49
出力例 3
1136