Завдання № 21
відбірково-тренувальних зборів
команди міста Києва


за матеріалами ІІІ (міського) етапу 2007 року

1. Згортка

Максимальна оцінка: 100 балів
Обмеження на час: 1 сек.
Обмеження на пам’ять: 64 MБ
Вхідний файл: convol.in
Вихідний файл: convol.out
Програма: convol.*


Згорткою кортежу (a1; a2; ... ; ak) називають таку суму добутків:

a1 ak + a2 ak – 1 + a3 ak – 2 + a4 ak – 3 + … + ak –1 a2 + ak a1.

Послідовність додатних чисел {aj} задано таким чином: згортка перших j членів дорівнює 4 j – 1. Легко впевнитись, що ця послідовність починається так: 1, 2, 6, 20, 70.

Завдання
Обчислити aN  за даним N.

Вхідні дані
Єдиний рядок файлу містить число N, де 0 < N < 2000. Принаймні у половині тестів N < 200.

Вихідні дані
Єдиний рядок файлу містить цілу частину aN.
Приклади

convol.inconvol.out
420
6252

2. Комарі

Максимальна оцінка: 100 балів
Обмеження на час: 5 сек.
Обмеження на пам’ять: 64 МБ
Вхідний файл: mosquito.in
Вихідний файл: mosquito.out
Програма: mosquito.*


Нахабні комарі атакували кімнату Петрика й розсілись на стелі перед початком своїх підступних дій. Перед тим як лягти спати, Петрик хоче знищити максимальну кількість комарів. Для цього він бере улюблений підручник з програмування і сильно підкидає його вгору. Всі комарі, що потрапили під удар, гинуть (навіть ті, що знаходилися на границі області влучання).

Стеля кімнати має форму прямокутника, на якому запроваджено прямокутну систему координат. Осі абсцис ОХ та ординат OY розташовано паралельно стінам кімнати. Товщиною підручника нехтуємо. В момент удару підручник знаходиться у площині стелі, а його сторони паралельні осям OX та OY.

Завдання
Визначте найбільшу кількість комарів, яку можна знищити першим кидком, якщо задано координати всіх комарів і лінійні розміри підручника.

Вхідні дані
Перший рядок вхідних даних містить невід’ємне ціле число N — кількість комарів на стелі. Наступні N рядків містять пари невід'ємних цілих чисел xj і yj — координати j-го комара на стелі. Останній (N + 2)-ий рядок містить 2 натуральних числа w і h — лінійні розміри підручника.

В усіх тестах N ≤ 105, max{xj, yj} ≤ 109, max{w, h} ≤ 109.
В 70% тестів N ≤ 104, max{xj, yj} ≤ 104.
В 50% тестів N ≤ 103, max{xj, yj} ≤ 103.

Вихідні дані
Єдиний рядок вихідного файлу має містити одне ціле число — найбільшу кількість комарів, яку можна знищити першим кидком.

Приклади

mosquito.inmosquito.out
5
0 3
2 1
3 3
4 0
4 3
2 2
3






3
1 1
1 2
1 3
2 1
3




3. Пірати й золото

Максимальна оцінка: 100 балів
Обмеження на час: 1 сек.
Обмеження на пам’ять: 32 MБ
Вхідний файл: pirat.in
Вихідний файл: pirat.out
Програма: pirat.*


Команда з N піратів знайшли скарб з M однакових золотих монет і хоче його розділити. Всі пірати мають різний вік, при чому пірат з номером j + 1 старший за пірата з номером j. Першим пропозицію, про те як поділити скарб висуває найстарший пірат. Він вказує, скільки золотих монет має отримати кожен учасник команди. Якщо цю пропозицію підтримує не менше половини всіх піратів, то її приймають, і гроші розподіляють відповідним чином. Інакше найстаршого з живих пірата вбивають, а скарб ділять між собою вже N – 1 пірат за таким самим принципом. Кожен пірат (перераховано у порядку важливості):

Завдання
За відомими N і M визначте, скільки монет отримає кожний пірат.

Вхідні дані
В єдиному рядку файлу записано два цілих числа: N і M (1 ≤ N ≤10000, 0 ≤ M ≤ 1 000 000 000).

Вихідні дані
Файл містить N рядків по одному цілому числу в кожному рядку. У j-му рядку потрібно записати кількість монет, які отримає j-ий пірат. Якщо j-го пірата вб’ють, то в j-му рядку потрібно записати число –1.

Приклади

pirat.inpirat.out
2 100

0
100
7 2






0
1
0
1
0
0
-1
6 1





1
0
0
0
0
0