програмування в С++
28_11_2012_Тестування задач |
Добавил(а) Гісь Ігор Володимирович | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
28.11.12 09:50 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Олімпіадна інформатика 1. Що таке олімпіадна інформатика? Що потрібне для успішної участі в олімпіадах по інформатиці? Як показує практика, тільки знання мови програмування для цього явно не достатньо. Взагалі, виявляється, що олімпіадні задачі по інформатиці лежать десь на стику математики і програмування. І дуже часто виявляється, що розв’язуючи задачі школярі не тільки вчаться програмувати, але і освоюють нові розділи математики. 2. Як перевіряються розв’язки задач олімпіади Історично склалося так, що розв’язки на олімпіадах по програмуванню перевіряються автоматично. Ваше завдання написати програму, яка за заданими вхідними даними обчислює і виводить вихідні дані. 3. Апаратне та програмне забезпечення Учасникам олімпіади можуть вибирати мову програмування с заданого переліку: Pascal, C або C++. Система програмування Free Pascal 2.0 (чи новішої версії), GCC 4.2 (чи новішої версії), Turbo Delphi Explorer, Visual C++ 2008 Express). 4. Завдання олімпіади Завдання олімпіади мають бути алгоритмічного характеру, тобто основними результатами роботи учасника має бути: алгоритм, що правильно та ефективно розв’язує поставлену задачу, та програма, що реалізує запропонований алгоритм. Основними категоріями олімпіадних задач є:
Системи тестування Працюйте в он-лайн системах, які автоматично перевіряють та тестують Ваші розв’язки: http://olymp.sumdu.edu.ua - Веб-ресурс підтримки та проведення шкільних та студентських олімпіад з інформатики http://www.e-olimp.com.ua/ - Інтернет-портал організаційно-методичного забезпечення дистанційних олімпіад з програмування для обдарованої молоді навчальних закладів України http://www.olymp.vinnica.ua/ - Центр підтримки та проведення олімпіад школярів з використанням можливостей Internet. Список тестуючих систем
Список ресурсів · http://vippolabinfo.16mb.com - сайт «Лабораторія інформатики сьогодні», методична підтримки напрямків роботи. · http://vippoolimp.16mb.com – Волинська учнівська Інтернет олімпіада з програмування. · http://schoololymp.byethost32.com – заочна школа роботи з обдарованими учнями з інформатики. Завдання IІ етапу Всеукраїнської учнівської олімпіади з інформатики 2012-2013 н.р. Задача 1. «Число» (25 балів) Ім’я файлу програми: NUMBER.* Ім’я вхідного файлу: INPUT.DAT Ім’я вихідного файлу: OUTPUT.ANS Максимальний час роботи на одному тесті: 1с Іноді хочеться показати оточуючим, що ви - нібито екстрасенс. Можливо, хочеться продемонструвати діткам, як багато ви знаєте і вмієте. Вгадування загаданого числа - відмінний фокус для того, щоб розташувати до себе людей. Інструкція1. Попросіть загадати три цифри (обов'язково цифри, а не числа). 2. Потім попросіть його помножити першу загадану цифру на 2 і додати до результату, що вийшов 3. Потім помножити це число на 5. 3. Потім до вже отриманого числа додав другу загадану цифру і помножити суму на 10. 4. До нового числа, що вийшло додайте третю задуману цифру. 5. Попросіть його назвати число, що вийшло. 6. Зробіть вигляд, що ви задумалися (тільки довго не думайте). Тим часом, відніміть від вимовленого вголос числа 150. Вийде, що перша, друга і третя цифри результату є задуманими цифрами гравця. Вхідні дані. Вхідні дані містять рядок з числом, яке назвав учень. Вихідні дані. Вихідний текстовий файл містить рядок з трьома задуманими числами через пропуск.
Приклад файлів Задача 2. «Фігура» (25 балів) Ім’я файлу програми: figure.* Ім’я вхідного файлу: INPUT.DAT Ім’я вихідного файлу: OUTPUT.ANS Максимальний час роботи на одному тесті: 5с Учитель математики намалював на дошці чотири відрізки. Дошка була інтерактивна, тому легко визначив координати кінців відрізка, відрізки можна переміщувати і повертати. Вчитель продиктувавши учням координати кінців відрізків, попросив визначити, яку фігуру можна побудувати з даних відрізків. Вхідні дані. Вхідний текстовий файл містить чотири рядки по чотири цілих числа розділених пропусками, які задають координати початку та кінця чотирьох відрізків (|x,y|≤2147483647). Вихідні дані. Вихідний текстовий файл містить єдиний рядок з назвою фігури з найвищим пріоритетом(див. таблицю). Приклад файлів
Завдання 3. «Коло» (25 балів) Ім’я файлу програми: circle.* Ім’я вхідного файлу: INPUT.DAT Ім’я вихідного файлу: OUTPUT.ANS Максимальний час роботи на одному тесті: 2 с Дуже талановитий учень вмів від руки малювати ідеальні кола. За перерву він на дошці намалював велику кількість кіл. На початку уроку вчитель попросив учнів класу поміряти радіуси або діаметри кіл дерев’яною лінійкою в сантиметрах. Вчитель записав в зошит їхні заміри, порахував кількість замірів і попросив талановитого «художника» підрахувати кількість різних кіл, яку він намалював. Технічні умови. Програма CIRCLE читає з першого рядка файлу кількість замірів N (1≤N≤1000000) та наступного рядка з N натуральних чисел, які задають розмір кіл (не більші 1000000). Числа розділено пропуском. Програма виводить на екран єдине число - шукану величину. Приклад файлів
Задача 4. «Трикутник» (25 балів) Ім’я файлу програми: triangle.* Ім’я вхідного файлу: INPUT.DAT Ім’я вихідного файлу: OUTPUT.ANS Максимальний час роботи на одному тесті: 5с Інший талановитий учень, після вивчення теореми Піфагора, перед наступним уроком намалював на дошці N прямокутних трикутників. Вчитель на початку уроку визначив довжини сторін трикутника дерев’яною лінійкою в сантиметрах і заокругливши до цілого записав числа в зошит. На початку уроку, закривши дошку, продиктував записані числа в довільному порядку та попроси визначити яку кількість прямокутних трикутників побудував «учень Піфагора». Вхідні дані. Вхідний текстовий файл містить в першому рядку число N (3<=N<=100) , далі слідують 3*N рядків, у кожному одне натуральне число (a<=2147483647). Вихідні дані. Вихідний текстовий файл містить один рядок з цілим числом k – максимальна кількість прямокутних трикутників , які можна побудувати з заданих сторін. Приклади файлів
Сумарна кількість балів – 100 |