printЗанятие 20

printB. Создание тестов для задачи "Гномий язык"

Ограничения: время – 1s/2s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Напишите тесты для следующей задачи:
Гном Чихун получил свое прозвище из-за частого чиханья. Иногда он может чихнуть 2-3 раза посреди какого-нибудь длинного слова гномьего языка. Если чих получится в середине слога, то слово станет непонятным и его придется произносить заново. Поэтому для Чихуна важно знать, как слово делится на отдельные слоги. Основой слога в гномьем языке является непрерывная последовательность гласных букв, к которой слева и справа может примыкать 0 или более согласных. Если слог не является первым слогом слова, то к нему относится только согласная, стоящая непосредственно перед группой гласных. Остальные согласные перед слогом относятся к предыдущему слогу слова. Гласными буквами являются буквы 'a', 'e', 'i', 'o' и 'u', согласными – все остальные. Буква 'h' не является самостоятельной согласной, она указывает на приглушение согласной, стоящей перед ней, или на то, что гласные произносятся раздельно (относятся к разным слогам). Буква 'h' не может стоять перед 'h', но может быть первой буквой слова. (На самом деле в гномьем языке гораздо больше букв, чем в латинском алфавите, но их нет даже в кодировке Unicode, поэтому задачу придется решать для транскрипции гномьих слов латинскими буквами).
Напишите программу, которая найдет для заданного слова места, где Чихун может чихнуть.
Ввод содержит одно слово длиной не более 50 букв, состоящее из строчных латинских букв. Слово содержит как минимум одну гласную букву.
Вывести слово из входного файла, указав места разбиения слова на слоги с помощью символа '-'.

Пример ввода 1

bundshaatur

Пример вывода 1

bund-shaa-tur

Пример ввода 2

aha

Пример вывода 2

a-ha
Вывод программы должен содержать тесты в форме:
*INPUT
Ввод для теста 1
*OUTPUT
Вывод для теста 1
*INPUT
Ввод для теста 2
*OUTPUT
Вывод для теста 2
...
Ввод для тестов должен соответствовать условиям задачи. Решение считается принятым, если тесты обнаруживают ошибки во всех программах из некоторого набора. Количество тестов не должно превышать 20. Тесты после 20-го игнорируются. Ошибка PE при проверке означает, что выведенные тесты содержат ошибки, т.е. не соответствуют условиям задачи или ввод выводу.

Пример вывода

*INPUT
bundshaatur
*OUTPUT
bund-shaa-tur
*INPUT
aha
*OUTPUT
a-ha
Вы можете переслать также программу, которая выводит файл с тестами.
loading