Завдання 4-го рівня складності

Задача JUMP

      

       У відомій комп’ютерній  грі персонаж може мандрувати, стрибаючи зі стовпчика на стовпчик. Стовпчики стоять вздовж прямої на відстані 1 м. один від одного. На землі, звичайно, опинитися ніяк не можна – це смерть. На початку гри персонаж знаходиться на стовпчику з номером K, а в кінці  повинен опинитися на стовпчику з номером L. За яку мінімальну кількість стрибків це можливо зробити? Скільки  часу на це потрібно? Якщо маршрутів з мінімальною кількістю стрибків більше одного,  шукайте час найшвидшого.  Стрибки наш герой робить без затримок. Прискорення вільного падіння дорівнює 10 м/с2

 

Технічні умови

Програма читає з клавіатури послідовно:

N-кількість стовпчиків, (……………), К – номер початкового стовпчика, L – номер стовпчика, куди потрібно «доскакати», а далі – N (………..)   чисел  –  висоти стовпчиків в порядку зростання їх номерів, і, наостанок V – початкову швидкість стрибків, (…………….)

 Всі числа цілі, розділені пропусками.

 Програма виводить на екран через пропуск  ціле число – мінімальну кількість стрибків та дійсне  число без округлення – знайдений час. Якщо досягти кінцевого стовпчика неможливо, вивести -1  -1.

Приклади

 

Введення  6 1 6 14 10 1 1 10 4 12               Виведення 1 3.03604297006039E+0000

 

Введення  6 1 6 14 19 1 1 19 4 12               Виведення 3 1.70899174837253E+0000

 

Задача newSubNet

Після модифікацї мережв Sumnet є прямокутною сіткою в кожному з вузлів якої розміщено комп'ютер. Канали з'язку утворюють своєрідні "квадрати". Пакети проходять вздовж сторони такого квадрата за одиницю часу. Всі комп'ютери постійно працюють на прийом, а де-які з них одночасно починають надсилати в мережу пакти в режимі трансляції, тобто таким чином, що вони без будь-яких затримок на своєму шляху раніше чи пізніше потраплять на кожен з комп'ютерів мережі. Який мінімальний час пройде, поки якийсь з комп'ютерів не отримає всі пакети. Мережа має розміри 2000*2000 (тобто в мережі 4000000 комп'ютерів).
2<=N<=1000 - кількість комп'ютерів, що одночасно відправляють пакети 0<= Xi,Yi<= 2000 - кординати і-го комп'ютера

Технічні умови: Програма зчитує з клавіатури число N, а далі N пар цілих чисел - координати комп'ютерів, що надсилають пакети. Всі числа розділено пропусками. Програма виводить на екран єдине число - шукану величину.

Приклад.

Введення> 3 1 1 5 1 3 3
Виведення> 2

(через дві одиниці часу пакети від усіх надсилаючих комп'ютерів зберуться на комп'ютері з координатами (3,1))

Задача Space

Орбітальна станція являє собою куб розмірами n*n*n, що розділений переборками на одиничні відсіки. Кожна переборка має люк. Між деякими  парами відсіків є прямий зв'язок (телепорт), а деякі відсіки завантажені приладами, причому телпортів такі відсіки не мають .Космотнавт знаходиться  в одному з вільних відсіків і бажає перейти в інший вільний відсік. Яку мінімальну кількість люків він має пройти для цього, не заходячи в жоден з відсіків, що завантаженіі приладами? Вважається, що при телепортації космонавт не проходить ні через один люк.

Технічні умови

Ви вводите з клавіатури розмір станції n (1<=n<=50), кількість телепортів K, кількість загромаджених відсіків L,  (0<=K,L<=500), потім K груп по 6 чисел - координати відсіків, з'єднаних телепортом, потім L груп по 3 числа - координати зайнятих відсіків, потім координати космонавта та координати відсіку,  куди він направляється. Всі дані вводяться через пропуск в одну стрічку. Ви виводите на екран шукану мінімальну кількість люків, якщо космонавт потрапити у заданий відсік не зможе, виводить -1.

Приклад

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


Задача Subnet

Мережа SubNet складається з N пронумерованих комп'ютерів, деякі пари з яких з'єднано провідними каналами зв'язку. Довжина кожного каналу відома. Зрозуміло, не існує каналу, що з'єднує комп'ютер сам з собою. По каналу інформація передається в обидві сторони. Між будь-якими двома комп'ютерами існує не більше одного каналу. Головний сервер мережі SubNet має номер 1. Мережні протоколи SubNet забезпечують найкоротший шлях до сервера від будь-якого з К комп'ютерів, що надсилають в даний момент часу пакети на сервер. Яка максимальна довжина тієї частини мережі, по якій проходять пакети від усіх К комп'ютерів, перш ніж потрапити на сервер?

 

Технічні умови: Програма читає з клавіатури цілі числа N, M, K, далі - K натуральних чисел, далі - M груп по три натуральних числа -номери з'єднаних комп'ютерів та довжина каналу між ними, що не перевищує 1000. Всі числа розділено пропусками. Мережу збудовано так, що пакети з будь-якого комп'ютера можуть дістатися до сервера.
(2<=N<=1000, 1<=M<=10000, 1<=K<=100)
N - кількість комп'ютерівв мережі,
M - кількість відрізків кабелю, що з'єднують комп'ютери попарно,
К -кількість комп'ютерів, що надсилають сигнали на сервер (введені К натуральних чисел - їх номери).
Програма виводить на екран найбільшу довжину каналів, якими, за згаданих  умов, проходять пакети від всіх К комп'ютерів на сервер.

 

Приклади.

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

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