14006: Згорнуті інтервали - Convoluted Intervals - USACO21DecSilver


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

Бали: 100 (partial)
Time limit: 1.0s
Memory limit: 256M

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

Корови грають у гру з множиною з \(N\) інтервалів (\(1\le N\le 2\cdot 10^5\)), де \(i\)-ий інтервал починається в позиції \(a_i\) на числовій прямій, а закінчується в позиції \(b_i \geq a_i\). Обидва числа \(a_i\) and \(b_i\) - цілі, в інтервалі \(0 \ldots M\), де \(1 \leq M \leq 5000\).

Щоб грати в цю гру, Бесі вибирає деякий інтервал, наприклад \(i\)-ий. І Ельза вибирає деякий інтервал, наприклад, \(j\)-ий, можливо той самий. Для заданої величини \(k\) вони виграють, якщо \(a_i + a_j \leq k \leq b_i + b_j\).

Для всіх \(k\) в інтервалі \(0 \ldots 2M\), порахуйте кількість упорядкованих пар \((i,j)\) для яких Бесі та Ельза виграють у цю гру.

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

Перший рядок введення містить \(N\) та \(M\). Кожен з наступних рядків описує інтервал у цілих числах \(a_i\) та \(b_i\).

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

Виведіть \(2M+1\) рядок, по одному для кожного \(k\) в інтервалі \(0 \ldots 2M\).

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

2 5
1 3
2 5

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

0
0
1
3
4
4
4
3
3
1
1

Пояснення до прикладу

У цьому прикладі для \(k=3\), є 3 упорядковані пари, які дозволяють
Бесі та Ельзе виграти: \((1, 1)\), \((1, 2)\) та \((2, 1)\).

Оцінювання

У тестах 1-2 \(N\le 100, M\le 100\).
У тестах 3-5 \(N\le 5000\).
У тестах 6-20 немає додаткових обмежень.


Коментарі

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