Четвер, 18.04.2024, 13:43
Головна Реєстрація RSS
Вітаю Вас, Гість
Наше опитування
Оцініть мій сайт
Всього відповідей: 68
Завдання ІI етапу Всеукраїнської учнівської олімпіади з інформатики 2013-2014 н.р.


Задача 1. Пори року (10 балів)
По заданому номеру місяця в році визначити пору року.

Вхідні дані.
Введіть натуральне число N (N ≤ 100) – номер місяця.

Вихідні дані.
Виведіть для літніх місяців «Summer», для зимових – «Winter», для весняних – «Spring», для осінніх – «Autumn». Якщо число задано невірно и не відповідає можливому значенню місяця, то виведіть «Error».

Приклади.
Вхідні даніВихідні дані
13Spring
215Error

Рішення: програма на мові програмування Turbo Pascal 7.0

Завантажити умову задачі, рішення та тести (12,7 Кб)

Задача 2. Перепис (15 балів)
В будинку живуть N жителів. Одного разу вирішили провести перепис всіх жителів будинку і склали список, в якому вказали вік і стать кожного жителя. Знайти номер найстаршого жителя чоловічої статі.

Вхідні дані.
У вхідному файлі INPUT.TXT в першому рядку задано натуральне число N – кількість жителів (N ≤ 100). В наступних N строках міститься інформація про всіх жителів, кожний рядок містить два цілих числа: V та S – вік і стать людини (1 ≤ V ≤ 100, S – 0 або 1). Чоловічій статі відповідає значення S = 1, а жіночій – S = 0.

Вихідні дані.
Вихідний файл OUTPUT.TXT має містити номер найстаршого чоловіка в списку. Якщо таких жителів декілька, слід вивести найменший номер. Якщо жителів чоловічої статі немає, то виведіть -1.

Приклади.
Вхідні даніВихідні дані
1




4
25 1
70 1
100 0
3 1
2





Рішення: програма на мові програмування Turbo Pascal 7.0

Завантажити умову задачі, рішення та тести (13,6 Кб)


Задача 3. Годинник (20 балів)
Старовинний годинник б'є щопівгодини. Причому на початку кожної години він б'є стільки раз, скільки годин (по 1 разу – в час ночі і в час дня, по 2 рази – в дві години ночі та в дві години дня і так далі, опівночі і опівдні вони б'ють, відповідно, по 12 разів). І ще 1 раз вони б'ють в середині кожної години.
Дано проміжок часу (відомо, що пройшло строго менше 24 годин). Напишіть програму, що визначає, скільки ударів зробив годинник за цей час.

Вхідні дані.
У вхідному файлі INPUT.TXT у першому рядку записаний початковий момент часу, в другому рядку — кінцевий. Моменти часу задаються двома цілими числами, що розділяються пропуском. Перше число задає години (від 0 до 23), друге - хвилини (від 1 до 59, при цьому воно не дорівнює 30).

Вихідні дані.
У вихідний файл OUTPUT.TXT виведіть одне число — скільки ударів зробив годинник за цей відрізок часу.

Приклади.
Вхідні даніВихідні дані
15 20
10 25
45
210 25
5 20
135
35 2
5 21
0

Рішення: програма на мові програмування Turbo Pascal 7.0

Завантажити умову задачі, рішення та тести (15,1 Кб)


Задача 4. Шаховий кінь (25 балів)
Вася вирішив навчитися грати в шахи. Він знайшов книгу з записами партій і уважно їх вивчає. Можливо, колись Вася стане великим шахістом, але поки що він навчається в початковій школі, і йому нелегко дається шахова нотація. Найскладнішим для Васі виявились ходи шахового коня. Він просить написати програму, яка зможе повідомити Васі, на які клітинки можна походити конем із заданої клітинки.
Ви, напевно, теж знаєте, що кінь в шахах завжди переміщується або на дві клітинки по горизонталі та на одну по вертикалі, або на одну по горизонталі та на дві по вертикалі. Вертикалі позначаються маленькими латинськими літерами від a до h, а горизонталі - цифрами от 1 до 8. Кожна клітинка на шаховій дошці позначається літерою відповідної вертикалі и цифрою відповідної горизонталі, наприклад, c6 або e2.

Вхідні дані.
і У вхідному файлі INPUT.TXT записано 2 символи – координати клітинки, де стоїть кінь.

Вихідні дані.
У вихідному файлі OUTPUT.TXT в довільному порядку виведіть всі координати клітинок, на які за один хід може попасти кінь, який знаходиться на заданій клітинці.

Приклади.
Вхідні даніВихідні дані
1





e2





c1
c3
d4
f4
g1
g3
2

a1

b3
c2

Рішення: програма на мові програмування Turbo Pascal 7.0

Завантажити умову задачі, рішення та тести (13,9 Кб)


Задача 5. «Нафтові плями» (30 балів) Після аварії на морській нафтовій свердловині в океан вилилося багато нафти. Вона розтеклася по воді, після чого утворилася певна кількість нафтових плям. Для ліквідації наслідків аварії було створено штаб з координації дій. Співробітники штабу зберігають інформацію про плями в комп'ютері у вигляді матриці розмірністю M x N. Комірка матриці містить 0, якщо нафтова пляма в цих координатах відсутня та 1, якщо наявна (2 ≤ M, N ≤ 100). У матриці комірки плям не можуть дотикатися одна до одної ні сторонами, ні кутами.
Для полегшення ліквідації наслідків аварії потрібно написати програму OIL.*, яка знаходитиме загальну кількість плям та кількість плям з однаковою площею.

Вхідні дані.
Вхідний текстовий файл INPUT.TXT містить в першому рядку два числа M та N, далі слідують M рядків, у кожному по N цілих чисел розділених пропусками – елементи матриці.

Вихідні дані.
Вихідний текстовий файл OUTPUT.TXT містить у першому рядку ціле число k - загальну кількість плям, далі у кожному з рядів міститься по два числа, перше – площа плями, друге – їх кількість. Дані посортувати по площах в порядку зростання.

Приклади.
Вхідні даніВихідні дані
1





5 5
1 0 1 0 0
0 0 1 1 0
1 0 0 0 0
1 0 0 0 1
1 0 1 0 13
5
1 2
2 1
3 2



Рішення: програма на мові програмування Turbo Pascal 7.0

Завантажити умову задачі, рішення та тести (14,9 Кб)

Наверх