Четвер, 18.04.2024, 17:57
Головна Реєстрація RSS
Вітаю Вас, Гість
Наше опитування
Оцініть мій сайт
Всього відповідей: 68
Головна » 2017 » Лютий » 3 » Тренувальний тур ІІІ етапу Всеукраїнської учнівської олімпіади з інформатики 2016/2017 н.р.
20:47
Тренувальний тур ІІІ етапу Всеукраїнської учнівської олімпіади з інформатики 2016/2017 н.р.
ІІІ обласний етап Всеукраїнської учнівської олімпіади з інформатики 2016/2017 н.р. планується провести з використанням автоматичної системи прийняття та перевірки робіт учасників олімпіади. У зв’язку з цим з 30 січня по 4 лютого 2016 року на порталі Хмельницького обласного інституту післядипломної педагогічної освіти (http://sbs2.km.ua/olymp/) було увімкнуто режим тренування для учасників олімпіади з інформатики.

За результатами тренувального туру учні Хоцьківської ЗОШ І-ІІІ ступенів мають такі результати із 97 учасників:

Козій Іван (11 клас) - 3 місце (439 балів з 600 можливих)
Чухно Катерина - (10 клас) - 5 місце (372)
Янча Тетяна - (9 клас) - 11-12 місце (302)
Коваленко Валентина - (8 клас) - 16 місце (284)

Submit a solution for A

Full score:100
Input file name:a.in
Output file name:a.out
Time limit:1 s
Real time limit:5 s
Memory limit:64M

Дивні шахи
Степан нещодавно придумав свою версію шахів, в якій гра відбувається на дошці, що має іншу форму.
Його дошка складається з N стовпців, i-й з яких містить Ai клітин. Нижні клітини всіх стовпців утворюють один горизонтальний ряд, причому довжини стовпців впорядковані зліва направо по незростанню. На малюнку нижче наведений приклад дошки, в якій три стовпчика, містять 5, 2 і 1 клітинку, відповідно.
Сьогодні Степана зацікавило питання: як розставити мінімальну кількість тур на його дошці так, щоб кожну клітинку поля била хоча б одна тура. Тура б'є ті клітини, які розташовані з нею на одній вертикалі або одній горизонталі.
Допоможіть Cтепану розставити на його дошці мінімальне число тур потрібним чином.
Вхідні дані:
Перший рядок вхідного файлу містить ціле число N (1 ≤ N ≤ 1000) - кількість стовпців дошки. Наступний рядок містить N чисел A1, A2, . . . , AN - кількість клітинок в стовпцях (1 ≤ Ai ≤ 1000, A1 ≥ A2 ≥ . . . ≥ AN).
Вихідні дані:
У першому рядку виведіть число K - мінімальна кількість тур, яку можна розставити на дошці так, щоб кожна клітинка дошки била хоча б одна тура. Наступні K рядків повинні містити опис позицій тур, по одній на кожному рядку. Позиція тури задається двома числами: номером стовпця, в якому стоїть тура, і номером клітинки в стовпці. Стовпці нумеруються, починаючи з 1, зліва направо, клітини в стовпцях нумеруються знизу вгору, також починаючи з 1.
Якщо підходящих розстановок декілька, можна вивести будь-яку.
Малюнок до прикладу.
Examples
Input in a.inOutput in a.out
3
5 2 1

2
1 5
2 1

 


Submit a solution for B

Full score:100
Input file name:b.in
Output file name:b.out
Time limit:1 s
Real time limit:5 s
Memory limit:64M

Анаграми
Два непорожні рядки однакової довжини називаються анаграмами один одного, якщо другий рядок складений із символів першою, і кожен символ використовується тільки один раз. Так, пари рядків «дереза» і «резеда» є анаграмами, а пари рядків «каток» і «відкат», «стежка» і «пірат» - не є.
Ви повинні визначити, чи є два даних рядки анаграмами один одного. Рядки містять тільки символи латинського алфавіту, причому великі та малі літери вважаються різними.
Вхідні дані:
Вхідний файл описує одну групу тестів, що складається з декількох рядків. Перший рядок файлу містить величину K (2 ≤ K ≤ 5) - кількість тестів в групі. Далі слідують K пар рядків - кожна пара відповідає одному тесту. Довжина одного рядка не перевищує 3000 символів (у 50% груп тестів ця довжина не перевищує 200).
Вихідні дані:
Вихідний файл має містити єдиний рядок з K чисел, відокремлених одним пропуском. Кожне число відповідає одному тесту і має дорівнювати 1, якщо введені рядки є анаграмами, і 0 в іншому випадку. Пробіли на початку і кінці рядка не допускаються.
Examples
Input in b.inOutput in b.out
4
Acad
cAda
AbRa
arBA
duda
adua
termo
metro
1 0 0 1








 


Submit a solution for C

Full score:100
Input file name:c.in
Output file name:c.out
Time limit:1 s
Real time limit:5 s
Memory limit:64M

Гра «70368744177664»
Степан дуже зрадів запровадженим вимушеним канікулам, адже тепер він має змогу витратити весь свій вільний час на підготовку до олімпіади з інформатики. Сьогодні Степан вирішив розібратися з двійковою системою числення. Як відомо, в ній необхідно вміти виконувати різного роду операції зі степенями двійки. Саме для вдосконалення таких навичок, у безмежних просторах інтернету хлопець знайшов цікаву гру, назва якої «70368744177664».
Правили гри полягають в наступному. Велике квадратне поле розділене на квадратики розміром 1×1, у деяких з них знаходяться числа – степені двійки. Гравець може обрати два довільних однакових числа, після чого ці числа зникають, а на полі з’являється інше число, що рівне сумі обраних чисел.
Вдосталь награвшись в цю гру, Степан написав програму, що за початковим набором чисел на полі, знаходить найбільше число, що може з’явитися під час гри. А чи вдасться Вам повторити досягнення Степана?
Вхідні дані:
У першому рядку записане одне число N (1 ≤ N ≤ 216) – кількість чисел. Другий рядок містить N цілих чисел Ai (1 ≤ Ai ≤ 230) – числа, що записані на полі на початку гри.
Вихідні дані:
У єдиному рядку виведіть одне число – найбільше число, що може з’явитися на полі під час гри.
Examples
Input in c.inOutput in c.out
4
2 4 4 8
16

9
4 4 4 4 4 4 4 4 4
32

 


Submit a solution for D

Full score:100
Input file name:d.in
Output file name:d.out
Time limit:1 s
Real time limit:5 s
Memory limit:64M

Цікаве число
Степан на факультативі з програмування почав вивчити системи числення. На першому уроці вчитель розповів про систему числення з основою два, дуже популярною в комп'ютерному світі. На другому уроці Степан дізнався про систему числення з основою три. І так далі на кожному наступному уроці він дізнавася про нові системи числення, так що на i-му уроці була розглянута система числення з основою i+1.
Щоб краще запам'ятати, Степан на кожному уроці бере одне і те ж число X і записує його в зошит в останній вивченій системі числення.

Малюнок №1. Приклад перекладу числа 81 в систему числення з основою 6. Одного разу, Степан помітив, що у записаного ним числа X в новій системі числення всі цифри однакові. До того ж, він розуміє, що таке відбувається вперше, і ні на якому з попередніх уроків число, не виходило таким цікавим. Повернувшись вражений додому, Степан забув про те, яку систему числення в цей день він розглядав на уроці.
Допоможіть йому знайти систему числення з мінімальною основою, в якій це число має однакові цифри.
Вхідні дані:
Єдиний рядок вхідного файлу містить одне ціле число X (1 ≤ X ≤ 1012) - число записане в десятковій системі числення.
Вихідні дані:
Вихідний файл повинен містити одне ціле число B (2 ≤ B) - шукана система числення.
Пояснення до прикладів:
Перший приклад: "3" це "11" в системі числення з основою 2.
Другий приклад: "219" це "333" в системі числення з основою 8.
Третій приклад: "1009" це "11" в системі числення з основою 1008.
Examples
Input in d.inOutput in d.out
32
2198
10091008

 


Submit a solution for E

Full score:100
Input file name:e.in
Output file name:e.out
Time limit:1 s
Real time limit:5 s
Memory limit:64M

Хрестики-нулики 2015
Два брата Сергій і Іван любили довгими зимовими вечорами грати в різні ігри. Особливою популярністю у хлопців користувалася гра «Хрестики-нулики». Однак через свою простоту вона їм швидко стала нецікавою. Брати вирішили придумати модифікацію цієї гри і назвали її «Хрестики-нулики 2014».
Для гри необхідний аркуш паперу з N клітинками по вертикалі і N по горизонталі, який назвемо ігровим полем. Для ускладнення і неповторності гри деяку кількість клітин може бути закрашено. Гравці ходять по черзі, починаючи з гравця, що грає хрестиками. За один хід гравцеві дозволяється вибрати будь-яку порожню незафарбовану клітинку і намалювати там фігуру свого типу (гравець, який грає хрестиками, може малювати тільки хрестики, який грає нуликами - тільки нулики). Гра продовжується до тих пір, поки на полі існує хоча б одна порожня і незафарбована клітинка або з'явиться рядок/стовпчик, в якому відсутні порожні і незафарбовані клітинки і кількість фігур одного типу більше кількості фігур іншого типу. Якщо в цьому рядку/стовпці кількість хрестиків більше ніж кількість нуликів, то виграв гравець, який грає хрестиком, а якщо більше нуликів - виграв гравець, який грає нуликами. Якщо на полі не залишилося жодної порожньої клітинки і в кожному рядку і стовпці кількість хрестиків і нуликів збігається, то вважається, що гра зіграна в нічию. У будь-яку незафарбовані клітинку дозволяється ставити не більше однієї фігури.
Івану дуже не щастило - він весь час програвав своєму супернику, але, тим не менш, не сумував, граючи партію за партією. Одного разу, зігравши в нічию, Іван був на сьомому небі від щастя і вирішив поділитися своїм успіхом з батьками. Для більшої переконливості хлопці вирішили показати їм ігрове поле, отримане після гри. Але от невдача... Іван ненавмисно пролив на ігрове поле склянку води, від якої деякі фігури розпливлися, і їх неможливо було розпізнати. Чітко можна було розібрати тільки зафарбовані клітини. Хлопці вирішили відновити ігрове поле. Допоможіть Сергію та Івану відновити ігрове поле, отримане після гри в «Хрестики-нулики 2014», яка завершилася в нічию.
Вхідні дані:
Перший рядок вхідного файлу містить два цілих числа N, M (2 ≤ N, M ≤ 80).
У наступних N рядках файлу записано по M символів без пробілів. Кожен j-й символ в i-му рядку описує відповідну клітинку ігрового поля.
Для опису клітинки ігрового поля допускається чотири типи символів:
'X' (ASCII 88) - зафарбована клітинка.
'+' (ASCII 43 ) - у клітинці знаходиться хрестик.
'−' (ASCII 45 ) - у клітинці знаходиться нулик.
'?' (ASCII 63 ) - у клітинці знаходиться фігура, тип якої неможливо розпізнати (тобто в клітинці може знаходитися як хрестик, так і нулик).
Вихідні дані:
Вихідний файл повинен складатися з N рядків по М символів у кожному - відновлене ігрове поле. Гарантується, що рішення завжди існує. Якщо існує декілька варіантів рішення, то виведіть будь-яке з них.
Оцінювання:
1 ≤ N, M ≤ 5 - 15 балів
Ігрове поле містить тільки символи '?' i 'X' - 40 балів
Examples
Input in e.inOutput in e.out
2 2
??
??
+−
−+

3 4
+?XX
?X?X
X??X
+−XX
−X+X
X+−X

6 4
X??X
X?−X
?+??
−???
?XX+
?XX?
X−+X
X+−X
++−−
−−++
−XX+
+XX−

 


Submit a solution for F

Full score:100
Input file name:f.in
Output file name:f.out
Time limit:1 s
Real time limit:5 s
Memory limit:64M

Цікавий калькулятор
Степан придбав незвичний калькулятор, який виконує тільки дві операції:

1. добавити число А;
2. добавити число В.

Перша операція збільшує число на екрані калькулятора на А, друга - на В. Степана зацікавило питання - скільки різних чисел можна отримати з числа 1 за допомогою програми (програма - це послідовність команд), яка містить рівно С команд.
Вхідні дані:
Три числа - A, B, C (-1000 ≤ A ≤ 1000, -1000 ≤ B ≤ 1000, 1 ≤ C ≤ 1000).
Вихідні дані:
Одне число - кількість різних чисел, яку можна отримати з числа 1 за допомогою програми рівно з С команд.
Оцінювання:
В даній задачі три підзадачі. Бали за підзадачу ставляться тільки при умові проходження усіх тестів підзадачі.
0. Тести 1 - 2: тести з умови оцінюються в 0 балів.
1. Тести 3 - 18: oбмеження C ≤ 16 - тести оцінюються в 30 балів.
2. Тести 19 - 44: тести оцінюються в 70 балів.
Examples
Input in f.inOutput in f.out
3 -2 56
0 0 101

 


Наверх

Переглядів: 530 | Додав: ivv
Всього коментарів: 1
avatar
0
1 Сергій Ковтун • 13:34, 11.02.2017
Гарний виступ на тренуванні!!!
Чекаємо з нетерпінням основні результати. Тримайтеся, ми вболіваємо за ВАС!
avatar