Подразделы

Другие разделы

Дата и время

19/12/2024 17:52:41

Авторизация

Имя:
Пароль:
Зарегистрироваться
Восстановить пароль
 

printЗадачи командных соревнований для школьников 1999

1. Путаница

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

Свинки замяукали: мяу, мяу!
Кошечки захрюкали: хрю, хрю, хрю!
К.Чуковский
Во входном файле содержится две строки длиной до 100 символов с произвольным текстом. Для упрощения все знаки препинания в тексте опущены, слова разделяются между собой точно одним пробелом. Словом будем называть произвольную последовательность длиной от 1 до 20 символов (любых, кроме управляющих). Программа должна поменять в этих двух строках слова с одинаковым числом букв, соответствующими друг другу по порядку среди слов с тем же числом букв. Если в другой строке нет слов с тем же числом букв или нет соответствующего по порядку слова, то слово остается на месте. Например, строки
A BB C DD
AA BBB CC EE
трансформируются в A AA C CC
BB BBB DD EE
Слово BB меняется c AA, DD с CC. A, C, BBB не изменяют местоположения, так как в другой строке нет слов с таким числом букв. EE также остается на месте, так как в первой строке нет трех слов из 2 букв.
Замечание: если программу преобразования применить дважды, то исходный текст должен восстановиться.

Пример ввода

Готовь сани летом а телегу зимой
Работа не волк и в лес не убежит

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

Работа волк летом и убежит зимой
Готовь не сани а в лес не телегу

2. Числовой пасьянс

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

На столе лежит стопка из `N` карточек, пронумерованных числами от 1 до `N`. Карточки раскладываются на стол в одну линию следующим образом: первая (верхняя) кладется на стол, вторая – слева от первой, третья – справа от первой, четвертая – слева от второй, пятая – справа от третьей и т.д., пока все карточки не будут выложены на стол. Каким должно быть исходное располо- жение карточек в стопке, чтобы разложенные на столе карточки образовали последовательный числовой ряд `1\ 2\ 3\ …\ N`?
Во входном файле содержится одна строка с числом `N` (`1\ ≤\ N\ ≤\ 100`).
Выходной файл должен содержать `N` строк с числами от 1 до `N`, показывающими расположение карточек в стопке (первое число соответствует верхней карточке стопки).

Пример ввода

5

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

3
2
4
1
5

3. Назад из Клондайка

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

Числовой лабиринт представляет собой квадрат размером `N`x`N` клеток, заполненный целыми числами в диапазоне от 1 до 9. Число в клетке означает, на сколько клеток нужно пройти по прямой за день из этой клетки в любом из восьми направлений по горизонтали, вертикали или диагонали. За пределы квадрата выходить нельзя. Из Клондайка в левом верхнем углу квадрата нужно попасть на опушку леса – на любую клетку нижнего или правого края квадрата.
Ввод
Во входном файле в первой строке находится целое число `N\ (2≤N≤30)`, далее следует `N` строк по `N` целых чисел в строке через один пробел.
Вывод
В выходной файл вывести минимальное число дней для прохождения лабиринта. Если выйти из лабиринта невозможно, то вывести число 0.

Пример ввода

4
1 4 5 1
8 1 3 3
3 9 6 4
1 7 2 1

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

3
по диагонали вниз-вправо, затем вниз-влево, затем вправо

4. Задачник по арифметике

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

Напишите программу для проверки задачника по арифметике.
Во входном файле содержится одна или более строк (длиной от 1 до 100 символов), каждая из которых содержит один арифметический пример. Правильный пример составлен из целых чисел, четырех арифметических действий (+,-,*,/), круглых скобок и, возможно, пробелов. Знак "-" используется для обозначения как вычитания, так и получения противоположного значения.
Ошибками в примерах являются:
несоответствие скобок 3)+(2
пустые скобки 3+()
неотрицательное число в скобках (2)+3
отсутствие операнда в арифметическом
действии или самого действия
*3+2 или (2+4)3
два или более знака подряд
(должно быть 2+(-3))
2+-3
пробелы в середине числа
(в любом другом месте разрешено
произвольное количество пробелов)
2 45+3
число, кроме 0, начинающееся с 0 45+032 или 000+2
пример, состоящий из одного числа
(в примере должно быть как минимум
одно вычисление 2*2 или –(-1))
2 или –2
недопустимые символы [x+2]:0.02=4
Ошибкой не является:
дополнительные скобки ((((2+4)))*5)
В выходном файле для каждого примера с ошибками вывести его номер. Каждый номер печатается на отдельной строке. Если неправильных примеров в файле нет, то в выходной файл вывести число 0.

Пример ввода

-(2+2) * 30                   
7*(6+3                        
2+-2                          
2+(-2)
4

Вывод для примера

2                        
3                        
5                        

loading