`Всеукраїнський центр проведення олімпіад в мережі Інтернет

Задача Bld. Володимир любить парнi числа, а Петро — непарнi. Тому вони завжди радiють, якщо зустрiчають числа, якi їм подобаються. Сьогоднi їм зустрілися всi цiлi числа вiд A до B включно. Володимир вирiшив порахувати суму всiх парних чисел вiд A до B, а Петро — суму всiх непарних, пiсля чого вони почали сперечатися, у кого вийшла сума бiльша. Допоможiть їм — знайдiть рiзницю мiж сумою Володимира i сумою Петра.

Технічні умови. Програма Bld читає з пристрою стандартного введення через пропуск два цiлих додатнiх числа A i B, якi не перевищують 2*109. Програма повинна вивести на пристрві стандартного виведення одне число — рiзниця мiж сумою парних чисел i сумою непарних чисел вiд A до B.

Приклади

Введення Виведення
3 6 2
3 7 -5

- - - - - - - - - - - - - - - - - - - - - - - -

Задача Money. Ярослав та Мирослава мають спільну колекцію з 𝑛 монет. Як символ своєї дружби вони хочуть окремо зберігати таку пару монет, що в сумі номінальна вартість цих двох монет дає особливе число 𝑠. Підрахуйте кількість різних способів вибрати потрібну пару.

Технічні умови. Програма Money читає з пристрою стандартного введення натуральні числа 𝑠 та 𝑛, не менші за 2. У другому рядку - 𝑛 натуральних чисел — номінальні вартості монет із колекції. Усі числа (включно з числами 𝑠 та 𝑛) не перевищують 200000. Програма виводить на пристрій стандартного виведення єдине число — кількість способів вибрати дві монети з сумарною номінальною вартістю 𝑠. Відомо, що шукана кількість не перевищує 109.

Приклади

Введення Виведення
4 5
2 2 3 2 1
4
10 3
6 2 10
0

- - - - - - - - - - - - - - - - - - - - - - - -

Задача Stamps2019. Нещодавно на уроці математики Ярослав і Мирослава вивчили, що арифметичною прогресією називають послідовність чисел, у якій різниця між кожними двома сусідніми членами однакова. А невдовзі після того діти дізналися, що на честь ювілею математичного товариства столиці було випущено дві серії марок. Кожна серія складається з 𝑛 марок різної номінальної вартості, і ці 𝑛 номіналів утворюють арифметичну прогресію. Для своєї колекції марок Ярослав придбав одну з цих серій, а Мирослава — іншу. Однак, роздивляючись придбання одне одного, діти ненароком перемішали всі марки.

Знаючи номінали марок — 2𝑛 попарно різних чисел, — допоможіть дітям розділити марки на дві серії. Відомо, що це можна зробити рівно в один спосіб.

Технічні умови. Програма Stamps2019 читає з пристрою стандартного введення натуральне число 𝑛 — кількість марок у серії, 3 ⩽ 𝑛 ⩽ 100 000. У другому рядку через пропуски 2𝑛 різних натуральних чисел, менших за 109, — перемішані номінали марок. Програма виводить на пристрій стандартного виведення в порядку зростання всі номінали марок Ярославової серії, а в другий рядок — усі номінали марок Мирославиної серії (так само в порядку зростання). Діти пам’ятають, що найдешевша марка Ярослава має менший номінал, ніж найдешевша марка Мирослави.

Приклад

Введення Виведення
4
7 9 23 3 16 15 11 2
2 9 16 23
3 7 11 15

Коментар до прикладу

Виведені у вихідний файл послідовності утворюють шукані серії марок, адже є арифметичними прогресіями: 9 − 2 = 16 − 9 = 23 − 16 та 7 − 3 = 11 − 7 = 15 − 11. Серії виведено в правильному порядку, бо 2 < 3.

- - - - - - - - - - - - - - - - - - - - - - - -

Задача Newnumbers. Козак Вус подарував вам набiр з n цифр (тобто чисел вiд 0 до 9 включно). I хоче дiзнатися у вас: яку максимальну кiлькiсть чисел з них можна скласти так, щоб кожне з них дiлилося на 3 та кожна цифра з набору була використана не бiльше 1 разу. Щоб скласти число, вам потрiбно вибрати будь-які цифри з набору, вибрати їхнiй порядок та скласти число з цих цифр. Звернiть увагу, що ви не зобов’язанi використати всi цифри. Ви ж не можете вiдмовити Вусу? :)

Маленька пiдказка вiд Математичної Сови:

  • Остача (залишок) вiд дiлення x на число 3 дорiвнює остачi вiд дiлення суми цифр числа x на число 3.

  • Число a є кратним числу b (тобто a дiлиться на b) лише, якщо остача вiд дiлення числа a на число b дорiвнює 0.

Технічні умови Програма Newnumbers читає з пристрою стандартного введення у першому рядку мiстить одне цiле число n (1 ⩽ n⩽5 · 105) — кiлькiсть цифр. У другому рядку записано n цiлих чисел, кожне з яких має значення вiд 0 до 9 включно. Програма виводить на пристрій стандартного виведення одне ціле число — максимальну кількість чисел кратних 3, що можна скласти з цього набору.

Приклади

Введення Виведення
1
0
1
14
8 8 4 8 1 1 0 0 2 1 9 3 4 1
8

Зауваження до прикладів

У першому прикладі ми можемо скласти лише одне число 0.

У другому прикладі з цього набору ми можемо скласти максимум 8 чисел. Один iз можливих способів — це скласти такі числа: 0, 0, 48, 9, 3, 21, 81, 84. Невикористаними у нас залишаться цифри 1, 1.

© LIKT 1998-2024