XIII обласна олімпіада учнів 9-11 класів з інформатики Хмельницький, 13 лютого 1999 року Задачі 1 туру. Задача 1. Відповісти на питання тесту. Максимальна кількість балів за задачу - 10. Задача 2."Паралелепіпед". Прямокутний паралелепіпед з натуральними довжинами сторін A,B і C (всі розміри не більші 10) розбито на кубики з ребром довжиною 1. Кубики пронумеровано випадковим чином послідовними натуральними числами від 1 до A*B*C. Через скільки кубиків пройде найкоротший шлях від кубика з номером 1 до кубика з номером A*B*C, якщо на кожному кроці можна переходити в будь-який сусідній (по вертикалі, по горизонталі, по діагоналі) кубик. Технічні вимоги: Файл розв'язку: PARAL.PAS або PARAL.BAS Вхідний файл: PARAL.DAT Вихідний файл: PARAL.SOL Обмеження часу: 20 секунд. Формат вхідних даних У текстовому файлі PARAL.DAT записані: -у першому рядку - три числа A( висота), B(ширина) і C(довжина); -в наступних A*B рядках- по С чисел в кожному - номери кубиків. Заповнення номерами проводиться так: прочитані дані розміщуються вздож довжини по рядках (по ширині) зліва направо. Формат вихідних даних У текстовому файлі PARAL.SOL записується одне число, яке вказує довжину шляху - кількість кубиків, через які потрібно пройти від кубика з номером 1 до кубика з номером A*B*C, щоб пройти через всі кубики з номерами 1,2,3,…,A*B*C. Приклад файлів вхідних і вихідних даних PARAL.DAT PARAL.SOL 2 3 4 28 1 3 5 7 9 11 13 15 17 19 21 23 2 4 6 8 10 12 14 16 18 20 22 24 Максимальна кількість балів за задачу - 25. Задача 3. "НCК". Задані два натуральні числа А і В (1<=A<=B<=10000). Потрібно обчислити найменше спільне кратне (НСК) всіх натуральних чисел від А до В включно, тобто знайти мінімальне натуральне число, яке ділиться на А, А+1,…,В. Технічні вимоги: Файл розв"язку: NSK.PAS або NSK.BAS Вхідний файл: NSK.DAT Вихідний файл: NSK.SOL Обмеження часу: 20 секунд. Формат вхідних даних Файл містить два числа А і В, які розділені пропуском. Формат вихідних даних У вихідний файл записується одне число - шукане найменше спільне кратне. Приклад файлів вхідних і вихідних даних NSK.DAT NSK.SOL 10 14 60060 Максимальна кількість балів за задачу - 33. Задача 4."АБРАКАДАБРА". Послiдовнiсть iз латинських букв будується так. Спочатку вона пуста. На кожному наступному кроцi послiдовнiсть подвоюється, пiсля чого до неї злiва дописується чергова буква латинського алфавiту (a, b, c,...). Нище наведенi першi кроки побудови послiдовностi: Спочатку. Пуста послiдовнiсть. Крок 1. a. Крок 2. baa. Крок 3. cbaabaa. Крок 4. dcbaabaacbaabaa. ........................................ Задача полягає в тому, щоб по заданому числу N визначити символ, який стоїть на N-му мiсцi в послiдовностi, яку отримали пiсля 26-го кроку. Технiчнi вимоги: Файл розв'язку: ABRA.PAS або ABRA.BAS. Вхiдний файл: ABRA.DAT. Вихiдний файл: ABRA.SOL. Обмеження часу: 20 секунд. Формат вхiдних даних У вхiдному файлi записане одне натуральне число N (1<=N<2^26). Формат вихiдних даних У вихiдному файлi записується єдиний символ, який стоїть в позицiї N отриманої послiдовностi. Приклад файлiв вхiдних i вихiдних даних ABRA.DAT ABRA.SOL 4 w Максимальна кiлькiсть балiв за задачу - 32. 14 лютого 1999 року Задачі 2 туру. Задача 1. "КУСКИ". На площинi задано N прямих. Напишiть програму, яка визначає, на скiльки кускiв розбивають площину цi прямi. Технiчнi вимоги: Файл розв'язку: KUSKY.PAS або KUSKY.BAS. Вхiдний файл: KUSKY.DAT. Вихiдний файл: KUSKY.SOL. Обмеження часу: 20 секунд. Формат вхiдних даних Вхiднi данi записанi в такому порядку: N,a1,b1,c1,d1,...,aN,bN,cN,dN, де 1<=N<=100, а пари чисел (аi,bi) i (ci,di) -дiйснi координати двох рiзних точок, через якi проходить пряма з номером i. Всi данi роздiленi пропусками i/або символами переведення стрiчки. Формат вихiдних даних У вихiдний файл необхiдно вивести одне цiле число - шукану кiлькiсть кускiв. Приклад файлiв вхiдних i вихiдних даних KUSKY.DAT KUSKY.SOL 3 7 0 0 0 2 0 2 2 0 2 0 0 0 Максимальна кiлькiсть балiв за задачу - 35. Задача 2. "ДРОБИ". В десятковому запису дробу m/n викреслили k-ту цифру пiсля коми. Порiвняти (менше, бiльше, рiвно) отримане число з дробом m/n. Технiчнi вимоги: Файл розв'язку: DRIB.PAS або DRIB.BAS. Вхiдний файл: DRIB.DAT. Вихiдний файл: DRIB.SOL. Обмеження часу: 20 секунд. Формат вхiдних даних У вхiдному файлi записанi два натуральнi числа m та n, роздiленi пропуском (m<1000, n<1000) і в новому рядку k. Формат вихiдних даних У вихiдному файлi записується одне слово (iз трьох можливих: менше, бiльше, рiвно). Приклад файлiв вхiдних i вихiдних даних DRIB.DAT DRIB.SOL 1 3 рiвно 6 Максимальна кiлькiсть балiв за задачу - 35. Задача 3."Форматування тексту". Дано текст. Виконати форматування тексту по ширині за заданою лівою і правою границею і абзацному відступу. Всі символи тексту з кодами 0..32 вважати пробільними, решту непробільними. Вирази в тексті виду "<* n3 n1 n2>" означають початок абзацу з лівою границею n1, правою границею n2 і абзацним відступом n3 і повинні бути виключені із відформатованого тексту. Вважати, що текст завжди починається з такого виразу. Вважати, що вирази завжди коректні (n2>n1, n2>n3, n1>0, n2>0, n3>0). Вважати, що в тексті немає слів довжиною більше (n2-n3)/2-1. Відформатований текст із пробільних символів повинен містити тільки пробіли (код 32) і переводи стрічки (пара символів з кодами 13, 10 якраз в такому порядку). Технiчнi вимоги: Файл розв'язку: FORMAT.PAS або FORMAT.BAS. Вхiдний файл: FORMAT.DAT. Вихiдний файл: FORMAT.SOL. Обмеження часу: 20 секунд. Формат вхiдних даних У вхiдному файлi записаний текст, який починається з виразу <* n3 n1 n2>. Формат вихiдних даних У вихiдному файлi записується текст Приклад файлiв вхiдних i вихiдних даних FORMAT.DAT <* 1 3 35> Write (procedure) <* 5 3 35> For typed files, writes a variable into a file component. For text files, writes one or more values to the file. FORMAT.SOL Write (procedure) For typed files, writes a variable into a file component. For text files, writes one or more values to the file. Максимальна кiлькiсть балiв за задачу - 30. Кінець умов