Codeforces Round 303 (Div. 2) |
---|
Закончено |
Маленькая девочка Сьюзи каждый день слушает сказки перед сном. Сегодняшняя сказка была про дровосеков, поэтому маленькая девочка сразу же начала представлять себе, как дровосеки рубят деревья, и в её мыслях родилась ситуация, описанная ниже.
Есть n деревьев, расположенных вдоль дороги в точках с координатами x1, x2, ... , xn. Каждое дерево имеет свою высоту hi. Дерево можно срубить и повалить влево или вправо. Тогда оно будет занимать отрезки [xi - hi, xi] и [xi;xi + hi] соответственно. Пока дерево не срублено, оно занимает точку с координатами xi. Дерево можно повалить, если на отрезке, который оно должно занимать после сваливания, нет ни одной занятой точки. Дровосеки хотят заготовить как можно большее число деревьев, поэтому Сьюзи стало интересно, какое наибольшее количество деревьев можно повалить.
В первой строке находится целое число n (1 ≤ n ≤ 105) — количество деревьев.
В последующих n строках находятся пары целых чисел xi, hi (1 ≤ xi, hi ≤ 109) — координата и высота і-го дерева.
Пары заданы в порядке возрастания xi. Никакие два дерева не находятся в точке с одинаковой координатой.
Требуется вывести одно число — максимальное количество деревьев, которое можно срубить по указанным правилам.
5
1 2
2 1
5 10
10 9
19 1
3
5
1 2
2 1
5 10
10 9
20 1
4
В первом примере деревья можно повалить так:
Во втором примере можно повалить еще и 4 дерево вправо, после чего оно займет отрезок [10;19].
Название |
---|