Matching
의견: 0
You are given \(N\), where \(N\) is even, points on a plane that have integer coordinates. For each integer \(a\),
there are at most two points with coordinates (a, x). Analogously, for each integer \(b\), there are at most
two points with coordinates (x, b).
You are able to draw horizontal or vertical line segments between pairs of given points. Is it possible to
draw ^{N}
_{2} ^{lines} ^{such} ^{that} ^{each} ^{of} ^{the} ^{given} ^{points} ^{is} ^{an} ^{endpoint} ^{of} ^{exactly} ^{one} ^{line} ^{segment} ^{and} ^{that} ^{no}
two line segments intersect?
Subtask
Score
Constraints
1
5
\(2 \le N \le 20\), for each integer \(a\), there is an even number of points with coordinates (a, x)
and an even number of points with coordinates (x, a).
2
6
\(2 \le N \le 20\)
3
7
\(2 \le N \le 40\)
4
40
\(2 \le N \le 2000\)
5
52
No additional constraints.
The first line contains an even integer \(N\) (\(2 \le N \le 100\,000\)) from the task description.
The \(i-th\) of the next \(N\) lines contains two integers \(X@@RISE_MATH_BLOCK_0@@i\) (\(1 \le X\)\(i\), Y\(i \le 100\,000\)), coordinates of the \(i-th\)
point.
If it is not possible to draw the line segments as explained in the task statement, you should output "NE"
(NO in Croatian) in a single line.
Otherwise, you should output "DA" (YES in Croatian) in the first line. In each of the next ^{N}
_{2} ^{lines} ^{you}
should output two spa\(ce-se\)parated integers \(i\) and \(j\) (\(1 \le i\), \(j \le N\)), which represent indices of the points
that are connected with a drawn line segment.
8
1 1
1 3
2 2
2 4
3 1
3 3
4 2
4 4DA
1 5
3 7
2 6
4 86
1 2
1 3
2 1
2 4
3 2
3 3DA
1 2
3 4
5 62
1 1
2 2NE평가 및 의견
Matching
Log in to rate problems.
아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.
풀이 제출
Matching