14053: Прямокутне пасовисько-Rectangular Pasture-USACO2020DecSilver


Відправити розв'язок

Бали: 100 (partial)
Time limit: 2.0s
Memory limit: 500M

Authors:
Problem type
Allowed languages
Brain****, C, C++, Java, Pascal, Python, v8js

Найбільше пасовище Фермера Джона може бути розглянута як велика 2D-гратка з квадратних комірок (як велика шахівниця). На даний момент момент \(N\) корів займають деякі з цих комірок (\(1 \leq N \leq 2500\)).

ФД хоче побудувати огорожу, яка оточить прямокутний регіон комірок. Сторони цього прямокутника повинні бути паралельні до осей координат, і він може бути малий, аж до однієї комірки. Допоможіть ФД порахувати кількість різних підмножин корів, які він може оточити такою огорожею. Зауважимо, що порожня підмножина має бути розглянута як одна з таких підмножин.

Формат вхідних даних

Перший рядок містить одне ціле число \(N\). Кожен з наступних рядків містить два розділених пробілом цілих числа - вказують \((x,y)\)-координати комірки, у якій знаходиться відповідна корова. Всі \(x\) координати різні. Всі \(y\) координати різні. Усі \(x\) і \(y\) лежать в інтервалі \(0 \ldots 10^9\).

Формат вихідних даних

Кількість підмножин корів, які ФД може обгородити. Можна довести, що ця кількість поміститися в 64-бітове знакове (наприклад, long long С/C++).

Приклад вхідних даних

4
0 2
1 0
2 3
3 5

Приклад вихідних даних

13

Усього є \(2^4\) підмножин. ФД не може обгородити лише корів
1, 2, 4
2, 4
1, 4
Тому відповідь \(2^4-3=16-3=13\).

Оцінювання:

  • У тестах 2-3 \(N\le 20\).
  • У тестах 4-6 \(N\le 100\).
  • У тестах 7-12 \(N\le 500\).
  • У тестах 13-20 немає додаткових обмежень.

Коментарі

Ще немає коментарів.