Codeforces Round 229 (Div. 2) |
---|
Закончено |
Инна очень любит спать, поэтому, чтобы проснуться, ей нужно целых n будильников. Представим, что комната Инны — это квадрат 100 × 100 с левым нижним углом в точке (0, 0), а правым верхним в точке (100, 100). Тогда будильники — это точки с целочисленными координатами в этом квадрате.
Наступило утро. Все n будильников в комнате Инны уже звонят, поэтому Инна очень хочет выключить их. Для этого Инна придумала занимательную игру:
Инна очень хочет спать, поэтому ей надо расправиться с будильниками как можно скорее. Помогите ей, найдите минимальное количество ходов в игре, которое требуется для выключения всех будильников!
В первой строке входных данных содержится целое число n (1 ≤ n ≤ 105) — количество будильников. Следующие n строк описывают будильники: i-ая строка содержит два целых числа xi, yi — координаты i-го будильника (0 ≤ xi, yi ≤ 100).
Заметьте, что в одной точке комнаты может лежать сколько угодно будильников, а также что будильники могут лежать на сторонах квадрата, обозначающего комнату.
В единственной строке выведите целое число — минимальное количество отрезков, которые нужно будет нарисовать Инне, если она будет действовать оптимально.
4
0 0
0 1
0 2
1 0
2
4
0 0
0 1
1 0
1 1
2
4
1 1
1 2
2 3
3 3
3
В первом примере Инна сначала выбирает тип «вертикальные отрезки», а затем рисует отрезки с концами: (0, 0), (0, 2); и, к примеру, (1, 0), (1, 1). Если она будет рисовать горизонтальные отрезки, понадобится как минимум 3 отрезка.
В третьем примере важно то, что Инна не имеет права менять тип отрезков во время игры. Поэтому ей потребуется либо 3 вертикальных, либо 3 горизонтальных отрезка, либо 3 вертикальных, чтобы закончить игру.
Название |
---|