Задача 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++). Тексти програм повинні строго відповідати технічним умовам, не містити не передбачених умовою введення та виведення. |