Задачи университетских командных соревнований

Во всех задачах данные вводятся из файла INPUT.TXT.
Результат выводится в файл OUTPUT.TXT.
Использовать какие-либо другие файлы запрещается.
Входные данные во всех задачах корректны, т.е соответствуют указанных в задачах форматам входных файлов, дополнительные проверки на их правильность не нужны.

1. Роботы планеты Шелезяка

(время выполнения одного теста не более 10 секунд)

На планете Шелезяка живут роботы, которые делают новых роботов. Группа из двух роботов за год может изготовить 3 робота, а группа из трех роботов - 5 новых роботов. В одиночку робот работать не может! Космические пираты, побывав на планете Шелезяка, насыпали песка в цистерну с машинным маслом. Большинство роботов вышло из строя, осталось только k новых роботов, но смазка сократила время их работоспособности до 1 года. Эти роботы придумали более совершенных роботов, с меньшим количеством трущихся деталей, которые на той же смазке могли работать уже 2 года, и начали их производство. Каждое новое поколение роботов (за счет различных усовершенствований) может работать на год больше предыдущего поколения. Роботы, изготовленные в первый год, работают 2 года, во второй - 3 года, в третий - 4 года и т.д.

Требуется найти, какое максимальное число работающих роботов может быть на планете через n лет, если первоначально было k роботов. (1<=k,n<=100)

Формат входного файла: в первой строке первоначальное количество роботов k и (через пробел) -количество лет n. В выходной файл выводится число роботов через n лет.

Пример работы программы:

INPUT.TXT:
3 3

OUTPUT.TXT:
29

2. Игра в слова

(время выполнения одного теста не более 5 секунд)

В старой детской игре "Виселица" один игрок загадывает слово, а другой пытается его угадать, называя по одной буквы. Если буквы нет в этом слове, то рисуется один из элементов картинки (вся картинка состоит из 7 элементов: эшафот, виселица, веревка, голова, руки, туловище и ноги). Если игрок угадывает букву, то буква (или буквы, если имеется несколько одинаковых букв) пишется на соответствующем ей месте. Если вся картинка будет нарисована, а слово не угадано, то игрок проигрывает. Если все буквы слова будут открыты, а картинка еще не дорисована, то игрок выигрывает. Буквы “и” и ”й” считаются одной буквой, буква “ё” в игре не используется.

Требуется по слову и последовательности названных букв определить результат игры.

Данные вводятся из файла INPUT.TXT. В первой строке - загаданное слово строчными буквами, а во второй - названная последовательность букв (тоже строчные русские) до 32 букв.

Результат: одна из трех строк ("Выигрыш", "Проигрыш" или "Досрочное окончание игры" (выводится только при исчерпании набора букв и невыполнении условий выигрыша или проигрыша)) - выводится в файл OUTPUT.TXT.

Пример работы программы:

INPUT.TXT:
попугай
анеопрстузгй

OUTPUT.TXT:
Выигрыш

3. Четыре краски и треугольный мир (время выполнения одного теста не более 10 секунд)

Известно, что для любой плоской карты требуется для раскрашивания не более 4 красок (страны с общей границей при раскрашивании должны получить разный цвет). Предположим, что имеется карта треугольного мира, в котором отдельные регионы (районы) стран также имеют форму
равносторонних треугольников, и некто раскрасил ее в четыре цвета по указанным правилам. Требуется определить, сколько стран нарисовано на этой карте.

Формат входного файла: в первой строке находится длина стороны h (1<=h<10) большого треугольника, в последующих h строках содержатся цвета (номер цвета от 1 до 4) маленьких треугольников порядно через один пробел.

В выходной файл выводится число стран на карте.

Пример работы программы (для показанного рисунка):

INPUT.TXT:
4
1
1 2 1

1 1 1 1 2
2 2 2 1 3 4 2

OUTPUT.TXT:
8

4. Puzzle для компьютера

(время выполнения одного теста не более 15 секунд)

Прямоугольная картинка разрезана на несколько одинаковых прямоугольных кусочков. Необходимо собрать исходную картинку, стыкуя кусочки таким образом, чтобы рисунок на соприкасающихся кусочках совпадал. Кусочек головоломки для компьютера будем представлять в виде массива 4x8 символов.

Символы на краях этих кусочков совпадают, поэтому их можно состыковать.
Исходная картинка для упрощения окружена рамкой из символов , которые не встречаются нигде больше в рисунке. Картинку можно собрать единственным способом.

Формат входного файла: в первой строке размеры головоломки в кусочках: число рядов N и (через пробел) число столбцов M. (2<=N,M<=5) В последующих 4*N строках содержится по 8*M символов - это кусочки (размером 4x8 символов), из которых необходимо собрать головоломку.

В выходной файл вывести собранную картинку.

Пример работы программы:

INPUT.TXT (сетка нарисована для удобства):
3 4
OUTPUT.TXT:

5. Periodic Strings
(время выполнения одного теста не более 5 секунд)

A character string is said to have period k if it can be formed by concatenating one or more repetitions of another string of length k. For example, the string "abcabcabcabc" has period 3, since it is formed by 4 repetitions of the string "abc". It also has periods 6 (two repetitions of "abcabc") and 12 (one repetition of "abcabcabcabc").

Write a program to read a character string and determine its smallest period.

Input: A single character string of up to 80 non-blank characters.
Output: An integer denoting the smallest period of the input string.

Sample Input
HoHoHo

Sample Output
2

6. Simply syntax
(время выполнения одного теста не более 10 секунд)

In the land of Hedonia the official language is Hedonian. A Hedonian professor had noticed that many of her students still did not master the syntax of Hedonian well. Tired of correcting the many syntactical mistakes, she decided to challenge the students and asked them to write a program that could check the syntactical correctness of any sentence they wrote. Similar to the nature of Hedonians, the syntax of Hedonian is also pleasantly simple. Here are the rules:

0. The only characters in the language are the characters p through z and N, C, D, E, and I.

1. Every character from p through z is a correct sentence.

2. If s is a correct sentence, then so is Ns.

3. If s and t are correct sentences, then so are Cst, Dst, Est and Ist.

4. Rules 0. to 3. are the only rules to determine the syntactical correctness of a sentence.

You are asked to write a program that checks if sentences satisfy the syntax rules given in Rule 0. - Rule 4.

Input: The input consists of a number of sentences consisting only of characters p through z and N, C, D, E, and I. Each sentence is ended by a new-line character. The collection of sentences is terminated by the end-of-file character. If necessary, you may assume that each sentence has at most 256 characters and at least 1 character.

Output: The output consists of the answers YES for each well-formed sentence and NO for each not-well-formed sentence. The answers are given in the same order as the sentences. Each answer is followed by a new-line character, and the list of answers is followed by an end-of-file character.

Sample Input
Cp
Isz
NIsz
Cqpq

Sample Output
NO
YES
YES
NO