QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 256 MB Total points: 100

#8535. Mooball-Teams III

Statistics

Farmer John hat $N$ Kühe auf seinem Hof ($2 \leq N \leq 2\cdot 10^5$), die praktischerweise mit $1 \dots N$ nummeriert sind. Kuh $i$ befindet sich an den ganzzahligen Koordinaten $(x_i, y_i)$ ($1\le x_i,y_i\le N$). Farmer John möchte zwei Teams für eine Partie Mooball auswählen!

Eines der Teams ist das „rote“ Team, das andere das „blaue“ Team. Für die Teams gibt es nur wenige Anforderungen. Kein Team darf leer sein, und jede der $N$ Kühe darf höchstens einem Team angehören (möglicherweise keinem). Die einzige weitere Anforderung ergibt sich aus einer Besonderheit von Mooball: einem unendlich langen Netz, das als horizontale oder vertikale Gerade in der Ebene an einer nicht ganzzahligen Koordinate, etwa $x = 0.5$, aufgestellt werden muss. FJ muss die Teams so auswählen, dass sie durch ein Netz getrennt werden können. Die Kühe sind nicht bereit, sich dafür zu bewegen.

Hilf dem Farmer! Berechne für Farmer John die Anzahl der Möglichkeiten, ein rotes und ein blaues Team auszuwählen, die die obigen Anforderungen erfüllen, modulo $10^9+7$.

Eingabe

Die erste Eingabezeile enthält eine einzelne ganze Zahl $N.$

Die nächsten $N$ Eingabezeilen enthalten jeweils zwei durch ein Leerzeichen getrennte ganze Zahlen $x_i$ und $y_i$. Es ist garantiert, dass die $x_i$ eine Permutation von $1\dots N$ bilden; dasselbe gilt für die $y_i$.

Ausgabe

Eine einzelne ganze Zahl, die die Anzahl der Möglichkeiten angibt, ein rotes und ein blaues Team auszuwählen, die die obigen Anforderungen erfüllen, modulo $10^9+7$.

Beispiele

Eingabe 1

2
1 2
2 1

Ausgabe 1

2

Hinweis

Wir können entweder Kuh 1 dem roten Team und Kuh 2 dem blauen Team zuordnen oder umgekehrt. In beiden Fällen können wir die Teams durch ein Netz trennen (beispielsweise $x=1.5$).

Eingabe 2

3
1 1
2 2
3 3

Ausgabe 2

10

Hinweis

Hier sind alle zehn möglichen Zuordnungen der Kühe zu Teams. Das $i$-te Zeichen bezeichnet das Team der $i$-ten Kuh oder ist . , wenn die $i$-te Kuh keinem Team angehört.

RRB
R.B
RB.
RBB
.RB
.BR
BRR
BR.
B.R
BBR

Eingabe 3

3
1 1
2 3
3 2

Ausgabe 3

12

Hinweis

Hier sind alle zwölf möglichen Zuordnungen der Kühe zu Teams:

RRB
R.B
RBR
RB.
RBB
.RB
.BR
BRR
BR.
BRB
B.R
BBR

Eingabe 4

40
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
11 11
12 12
13 13
14 14
15 15
16 16
17 17
18 18
19 19
20 20
21 21
22 22
23 23
24 24
25 25
26 26
27 27
28 28
29 29
30 30
31 31
32 32
33 33
34 34
35 35
36 36
37 37
38 38
39 39
40 40

Ausgabe 4

441563023

Hinweis

Achte darauf, die Antwort modulo $10^9+7$ auszugeben.

Teilaufgaben

  • Eingabe 5: $N\le 10$
  • Eingaben 6–9: $N\le 200$
  • Eingaben 10–13: $N\le 3000$
  • Eingaben 14–24: Keine zusätzlichen Beschränkungen.

Aufgabenautor: Dhruv Rohatgi

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.