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

Задача Forecast. Василько та Юлія грають в таку гру. Спочатку кожен записує на папері свій прогноз – число від 1 до 6. Потім вони кидають гральний кубик з числами від 1 до 6 на гранях. Чий прогноз виявляється ближчим до того числа, що випало, той і переміг. Треба написати програму для визначення переможця.

Технічні умови. Програма Forecast читає з пристрою стандартного введення три числа через пропуски (пробіли) – прогноз Василька, Юлі та результат кидання кубика. Програма виводить “V”, якщо переміг Василько, “J” якщо Юлія або ”D” – якщо прогноз обох однаково близький до результату (тобто переможця виявити неможливо.

Приклад

Введення Виведення
3 4 5 J
1 6 2 V
4 4 3 D

====================================================================

Задача Сandy. На вулиці Сонячній треба побудувати 3 будинки, з відомою кількістю поверхів у кожному. Але краєвид буде зіпсовано, якщо, якщо кількість поверхів у будь- яких двох з них відрізняється більше, ніж на Z. Архітектор може зменшити в якомусь з будинків кількість поверхів на 1, але обов’язково при цьому збільшити на 1 поверх в іншому, зробивши новий проект. Потрібно зробити так, аби краєвид не був зіпсований.

Технічні умови. Програма Сandy читає з пристрою стандартного введення чотири невід'ємних цілих числа b1, b2, b3, Z через пропуск, кожне з них не більше за 109 - кількість поверхів у кожному з будинків згідно першого проекту та дозволену різницю між кількістю поверхів. Програма виводить одне число – мінімальну к-сть перероблених проектів, Якщо зберегти краєвид неможливо, вивести -1.

Приклад

Введення Виведення
1 6 3 2 2

===================================================================

Задача Circuitry. Для виготовлення новорічних гірлянд електротехнічна корпорація закупила лампочки коробками по z штук в кожній. Але гірлянди вони робили за особливою інноваційною схемою: перша гірлянда складалася лише з 1 лампочки, друга - з 4-х, третя - з 9 і так далі... Але у світі економічна криза, все треба рахувати, бажано знати, скільки лампочок залишиться після виготовлення усіх гірлянд. Звичайно, корпорація закупить мінімально необхідну кількість коробок з лампочками.

Технічні умови. Програма Circuitry читає з пристрою стандартного введення через пропуск спочатку кількість замовлених гірлянд n (1<=n<=109 , тобто мільярд), потім кількість лампочок у коробці z (1<=z<=106 , тобто мільйон), і виводить на пристрій стандартного виведення єдине ціле число — кількість лампочок, що залишаться не використаними, якщо купити найменшу можливу кількість коробок.

Приклад

Введення Виведення
7 16 4

====================================================================

Задача Pcnet У корпорації «Роги та копита» є багато комп'ютерів (ПК) , ПК з'єднані в мережу та пронумеровано натуральними числами от 1 до N. У корпорації є кілька філій, у кожній – кілька комп’ютерів. Якщо один і той же комп’ютер належить кільком філіям, то це маршрутизатор (роутер), який може перенаправляти пакети, інформація може потрапити з однієї філії у будь-яку іншу, якщо маршрутизатор належить і їй. Напишіть програму, яка по даному опису мережі визначить, через яку мінімальну кількість маршрутизаторів інформація може дістатися із комп’ютера A на комп’ютер B (якщо хоч один із них чи обидва - маршрутизатори, вони в цю мінімальну кількість не входять, бо працюють в цьому випадку звичайними ПК). Якщо мережа пошкоджена, то може так трапитися, що із комп’ютера A на комп’ютер B інформація не потрапить. У цьому випадку ваша програма повинна на це вказати.

Технічні умови. Програма Pcnet читає з пристрою стандартного введення спочатку число N — кількість ПК у корпорації (2<=N<=100), та через пропуск M — кількість філій (1<=M<=20). Далі слідує опис M мереж кожної філії. Він складається з числа Pi — кількість ПК у цій філїї (2<=Pi <=50) і з Pi чисел, що задають номери ПК, увімкнутих у мережу (ніякий ПК не підключено двічі). В останньому рядку записано два різних числа: A — номер ПК, що передає інформацію, і B — номер ПК, на котрий інформація має потрапити. Якщо ПК A – маршрутизатор, то інформація може починати маршрут з будь-якої філії. Якщо ПК B - маршрутизатор - то байдуже, від якої філії прийде інформація. Програма виводить на пристрій стандартного виведення єдине число- мінімальну кількість маршрутизаторів (без початкового та кінцевого, якщо такі були). Якщо інформація з ПК A на ПК B потрапити не може, виведіть –1 (мінус один).

Приклади

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

Примітка. Завдання розраховано на 5 годин. Для перевірки здаються лише файли з текстом програми однією з мов програмування (Pascal, C, C++). Тексти програм повинні строго відповідати технічним умовам, не містити не передбачених умовою введення та виведення.

© LIKT 1998-2024