Автор: | А. Кленин | Ограничение времени: | 2 сек | |
Входной файл: | input.txt | Ограничение памяти: | 16 Мб | |
Выходной файл: | output.txt |
Любимая девушка одного математика сообщила ему номер своего телефона. Как истинный представитель своей профессии, он тут же забыл этот номер, однако успел заметить и запомнить целый ряд соотношений между цифрами. Дальнейшая судьба математика зависит от того, сможет ли он по этим соотношениям определить достаточно узкое множество подходящих номеров, чтобы успеть обзвонить их за приемлемое время.
В городе, где они живут, телефонные номера состоят из 6 цифр от 0 до 9 в любой комбинации (например, 000999 — правильный телефонный номер).
Между цифрами номера возможны 6 видов отношений: >, <, =, <=, >=, <>. Например, 2>5 означает, что вторая цифра в номере больше, чем пятая.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
Автор: | А. Жуплев, А. Кленин | Ограничение времени: | 1 сек | |
Входной файл: | input.txt | Ограничение памяти: | 64 Мб | |
Выходной файл: | output.txt |
Крокодил Гена решил поступить в университет. Для поступления ему нужно пройти тест, состоящий из Q вопросов. На каждый из них можно ответить либо "Да", либо "Нет". Количество баллов, получаемых абитуриентом за тест, равно количеству данных им правильных ответов. Все абитуриенты проходят тест с одними и теми же вопросами.
Поскольку Гена не подготовился к тесту, он решил схитрить. Для этого он подговорил P шушанчиков, чтобы они прошли тест до него. Каждый шушанчик запомнил, как он отвечал на каждый из вопросов, и сколько баллов получил.
По этим данным Гена должен определить правильные ответы.
В первой строке входного файла содержатся числа P Q. Далее следует P описаний шушанчиков, по две строки на описание:
В выходном файле должна содержаться единственная строка, состоящая из Q символов + (ASCII 43) или - (ASCII 45) — правильные ответы к тесту. Если существует несколько вариантов правильных ответов, вывести любой из них. Так, во втором примере допустим также ответ -+++.
1 ≤ P ≤ 1000, 1 ≤ Q ≤ 15
Исходные данные таковы, что существует хотя бы один вариант решения.№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
Author: | A. Klenin | Time limit: | 5 sec | |
Input file: | input.txt | Memory limit: | 64 Mb | |
Output file: | output.txt |
When designing dialog forms for interactive programs, it is important to assign hot-keys (known also as accelerator keys) to each dialog element, so as to facilitate keyboard input.
For better mnemonics, hot-keys are assigned based on the letters of dialog elements' captions, usually favoring letters near the beginning of caption. Manual hot-keys distribution can be tedious and error-prone, as one must be careful not to assign same letter to different elements.
Your program will be given a list of captions. It must assign unique hot-keys to as many captions of possible. Each assigned hot-key must be a letter from the corresponding caption.
For each hot-key, position is the leftmost occurrence of the hot-key letter in the corresponding caption. From all solutions with the same numbers of hot-keys, your program must choose the one with minimal sum of hot-key positions. If there is still more than one optimal solution, output any of them.
Input file contains number of captions N followed by N lines with captions.
Output file must contain N lines with the same captions as in input. In those captions which have hot-key assigned, leftmost occurrence of hot-key letter must be preceded with '&' (ASCII 38).
1 ≤ N ≤ 10, all captions are from 1 to 10 characters in length and consist of small Latin letters.
No. | Input file (input.txt ) |
Output file (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
Автор: | А. Баранов | Ограничение времени: | 1 сек | |
Входной файл: | input.txt | Ограничение памяти: | 256 Мб | |
Выходной файл: | output.txt |
Пусть имеется n спичек равной длины. Из указанных спичек необходимо собрать набор прямоугольных блоков, каждый из которых представляет собой двумерную матрицу квадратных ячеек (см. рисунок). При этом каждое ребро в таком блоке соответствует ровно одной спичке. Таким образом, полученный блок однозначно определяется своей конфигурацией [A × B], где A и B — размеры его сторон. Блоки, совпадающие с точностью до поворота, считаются одинаковыми, т.е. [A × B] = [B × A].
Требуется вывести все уникальные комбинации прямоугольных блоков, которые можно составить из заданного числа спичек. При этом каждая такая комбинация должна включать в себя все имеющиеся спички. Комбинации, различающиеся только лишь порядком следования составляющих их блоков, полагаются тождественными и не должны встречаться более одного раза.
Входной файл "input.txt" содержит исходное число спичек n.
Выходной файл "output.txt" должен содержать все найденные комбинации, представленные в следующем формате: вначале указывается число блоков в текущей комбинации k; далее следует ровно k пар натуральных чисел, определяющих конфигурации имеющихся блоков.
В случае, если подходящие комбинации не были найдены,
выходной файл следует оставить пустым.
0 < n ≤ 128
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
Автор: | А. Кленин | Ограничение времени: | 2 сек | |
Входной файл: | input.txt | Ограничение памяти: | 2 Мб | |
Выходной файл: | output.txt |
На шашечной доске размером N × N клеток расположены несколько белых и несколько черных шашек. Горизонтали доски обозначены числами 1, 2, 3, … снизу вверх. (То есть первая строка входных данных описывает горизонталь доски с номером N, вторая N − 1 и т.д.) Вертикали обозначены буквами a, b, c, … слева направо. Клетка, таким образом, задается комбинацией из буквы и числа, например d12. Ход шашки задается перечислением всех клеток, которые она посетила за этот ход, включая начальную и конечную. Обозначения клеток при этом разделяются знаком - (минус). Например: a1-c3-e1.
Шашка может побить (взять) шашку противоположного цвета, "перепрыгнув" через нее по диагонали в любом направлении. Если после этого имеется возможность взять еще одну шашку, то это можно сделать на том же ходу. Требуется определить ход черных, соответствующий наиболее длинному взятию. Если имеется несколько вариантов хода, выдать любой из них.№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
Автор: | А. Жуплев | Ограничение времени: | 1 сек | |
Входной файл: | input.txt | Ограничение памяти: | 256 Мб | |
Выходной файл: | output.txt |
В преддверии очередной «красивой» даты —— 10 октября 2010 года —— суеверные пользователи Интернета были встревожены слухами о предстоящих сбоях в работе компьютеров. Особенный вирус, который получил условное название «три десятки» (по записи круглой даты 10.10.10) вызвал активное обсуждение на сайтах и в социальных сетях.
Напомним, что дата записывается в виде число.месяц.год. Существует несколько способов записи даты в данном формате: число и месяц могут быть записаны с лидирующим нулём (если значение не превышает 9), год может быть записан либо полностью, либо в виде последних двух цифр. Например, дата 2 марта 2004 года может быть записана как 02.03.2004, 2.03.04, 02.3.2004 и т.д.
Опасения, связанные с появлением вирусов к определённым круглым датам, возникают весьма часто, поэтому возникла необходимость расчёта ближайшей «красивой» даты для заданной даты.
Будем считать дату «красивой», если найдётся такой способ записи даты, что после удаления разделяющих точек, получившаяся строка удовлетворяет хотя бы одному из следующих условий:
Требуется написать программу, которая по указанной дате определит ближайшую следующую за ней (включая её саму) «красивую» дату.
Примечание: количество дней в месяцах равно 31, 28 или 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31. Год является високосным, если его номер кратен 4 и при этом не кратен 100 либо кратен 400.
Входной файл содержит три целых числа — DC MC YC, обозначающих дату, где DC — день, MC — месяц, YC — год.
Выходной файл должен содержать три целых числа — DV MV YV, задающих ближайшую "красивую" дату, где DV — день, MV — месяц, YV — год.
1 ≤ DC ≤ 31, 1 ≤ MC ≤ 12, 1600 ≤ YC ≤ 9999
Входная дата корректна, т.е. день месяца не превышает количество дней в данном месяце данного года.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
3 |
|
|
Автор: | А. Кленин | Ограничение времени: | 1 сек | |
Входной файл: | input.txt | Ограничение памяти: | 64 Мб | |
Выходной файл: | output.txt |
Корректная запись IP-адреса — это строка, состоящая из четырёх десятичных чисел в диапазоне от 0 до 255 каждое, разделённых символом "точка" (ASCII 46). Компоненты записи IP-адреса не должны содержать лидирующих нулей.
Петя записал IP-адрес школьного сервера на листке бумаги и положил его в карман куртки. Петина мама случайно постирала куртку вместе с запиской. После стирки Петя обнаружил в кармане четыре обрывка с фрагментами IP-адреса.
Помогите Пете восстановить IP-адрес.
Выходной файл должен содержать все различные правильные записи IP-адресов, по одной записи в строке. Строки должны быть отсортированы лексикографическом порядке. Исходные данные таковы, что хотя бы одна такая запись существует.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
Автор: | О. Ларькина, А. Кленин | Ограничение времени: | 2 сек | |
Входной файл: | input.txt | Ограничение памяти: | 256 Мб | |
Выходной файл: | output.txt |
Один юный математик однажды познакомился с девушкой. Поскольку математик очень рассеян, а девушка ему понравилась, он занёс её имя в записную книжку, чтобы точно не забыть. Через несколько дней, когда он хотел снова поговорить с этой девушкой, он обнаружил, что действительно забыл, как её зовут, и, кроме того, забыл дома записную книжку.
Однако, он сумел вспомнить, что в записной книжке:
Напишите программу, которая определит, сколько различных имён удовлетворяют перечисленным условиям.
Так, в приведённом ниже примере подходящими являются имена (в лексикографическом порядке): aa, ab, ... az, b, ba.
Первая строка входного файла содержит целое число L. Следующие две строки входного файла содержат имена S1 и S2, длинной не менее одного и не более L символов каждое. Имя S1 лексикографически строго меньше, чем S2.
Выходной файл должен содержать единственное число — количество строк длиной от 1 до L, находящихся лексикографически строго между S1 и S2.
1 ≤ L ≤ 50
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|