Темы --> Информатика
    Язык программирования(952 задач)
    Алгоритмы(1657 задач)
    Структуры данных(279 задач)
    Интерактивные задачи(17 задач)
    Другое(54 задач)
---> 2656 задач <---
Источники
    Личные олимпиады(938 задач)
    Командные олимпиады(684 задач)
Страница: << 234 235 236 237 238 239 240 >> Отображать по:
Задан текст, требуется вывести вертикальную гистограмму для различных букв текста с помощью символов #.

Вовочка ломает систему безопасности Пентагона. Для этого ему понадобилось узнать, какие символы в секретных зашифрованных посланиях употребляются чаще других. Для удобства изучения Вовочка хочет получить графическое представление встречаемости символов. Поэтому он хочет построить гистограмму количества символов в сообщении. Гистограмма – это график, в котором каждому символу, встречающемуся в сообщении хотя бы один раз, соответствует столбик, высота которого пропорциональна количеству этих символов в сообщении.

Входные данные

Входной файл содержит зашифрованный текст сообщения. Он содержит строчные и прописные латинские буквы, цифры, знаки препинания («.», «!», «?», «:», «-», «,», «;», «(», «)»), пробелы и переводы строк. Размер входного файла не превышает \(10^4\) байт. Текст содержит хотя бы один непробельный символ. Все строки входного файла не длиннее 200 символов.

Выходные данные

Для каждого символа c кроме пробелов и переводов строк выведите столбик из символов «#», количество которых должно быть равно количеству символов c в данном тексте. Под каждым столбиком напишите символ, соответствующий ему. Отформатируйте гистограмму так, чтобы нижние концы столбиков были на одной строке, первая строка и первый столбец были непустыми. Не отделяйте столбики друг от друга. Отсортируйте столбики в порядке увеличения кодов символов.

Пример

Входные данные

Выходные данные

Hello, world!
     #   
##
#########
!,Hdelorw
Twas brillig, and the slithy toves
Did gyre and gimble in the wabe;
All mimsy were the borogoves,
And the mome raths outgrabe.
         #              
#
#
#
#
# #
# # #
# # ### ####
## ###### ####
##############
############## ##
# # ############## ###
########################
,.;ADTabdeghilmnorstuvwy
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
64 megabytes
На шахматной доске находится два коня. Для них заданы начальные и конечные клетки. Требуется вывести минимальную последовательность ходов коней так, чтобы они не находились на одной и той же клетке.

Петя учится играть в шахматы. Недавно он заметил, что несмотря на то, что кони умеют прыгать через фигуры, они могут мешать друг другу дойти до нужных клеток. Петя поставил на доску двух коней: черного и белого, и для каждого их них выбрал клетку, на которой он хочет его видеть. Теперь ему интересно, какое минимальное число ходов потребуется коням, чтобы дойти до нужных клеток.

Кони ходят по шахматным правилам (на одну клетку по горизонтали и две по вертикали или на одну клетку по вертикали и на две по горизонтали). Порядок ходов черного и белого коня может быть произвольным. Коням не разрешается одновременно вставать на одну и ту же клетку.

Входные данные

Во входном файле записаны четыре клетки шахматной доски в следующем порядке: начальное положение белого коня, начальное положение черного коня, конечное положение белого коня, конечное положение черного коня. Клетка шахматной доски задается горизонталью (буква от «a» до «h») и вертикалью (цифра от 1 до 8), не разделенными пробелами. Описания клеток отделяются друг от друга одним пробелом.

Гарантируется, что исходно кони находятся на различных клетках, и в конце кони также должны оказаться на различных клетках.

Выходные данные

Выведите в первой строке выходного файла количество необходимых ходов. Далее выведите последовательность ходов. Ход описывается следующим образом: буква, соответствующая цвету коня («W» для белого или «B» для черного) и клетка, на которую нужно пойти. Клетку выведите в таком же формате, как во входном файле.

Если искомой последовательности ходов не существует, выведите на первой строке выходного файла число -1.

Примеры
Входные данные
a1 a2 a1 a6
Выходные данные
2
B b4
B a6
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
64 megabytes
Задано поле для игры в сапер. Цифрами 0 помечены пустые клетки, а 1 - клетки, в которых находится мина или число. Требуется найти расстановку мин,чтобы получился заданный рисунок.

Мальчику Васе очень нравится известная игра «Сапер». В нее играет один человек. Игра идет на клетчатом поле размером \(m\)×\(n\) (\(m\) строк, \(n\) столбцов). В некоторых клетках поля стоят мины. В каждой из остальных клеток записано либо число от 1 до 8 – количество мин в соседних с ней клетках, либо ничего не написано – это означает, что в соседних клетках мин нет. Клетки являются соседними, если они имеют хотя бы одну общую вершину. В одной клетке не может стоять более одной мины. Будем называть поле с расположенными на нем минами и числами картой.

Изначально все клетки поля закрыты. Игрок за один ход может открыть какую-нибудь клетку. После этого игроку показывается содержимое этой клетки, и если в открытой им клетке оказывается мина, он проигрывает. В противном случае игра продолжается. Цель игры – открыть все клетки, в которых нет мин.

У Васи на компьютере есть эта игра, но ему кажется, что все карты, которые в ней есть, некрасивые и неинтересные. Поэтому он решил нарисовать свои. При этом он хочет, чтобы карты, которые он нарисует, после того, как они будут открыты, выглядели красиво.

У Васи есть рисунки, нарисованные на клетчатой бумаге следующим образом: некоторые клетки закрашены в черный цвет, а некоторые оставлены белыми. Вася хочет по каждому такому рисунку сделать соответствующее ему поле для игры в «Сапера» по следующему правилу: если на рисунке клетка покрашена в черный цвет, то на этом месте должна быть либо мина, либо число от 1 до 8, если же клетка оставлена белой, то на игровом поле она должна быть пустой.

Напишите программу, которая сделает это за Васю.

Входные данные

В первой строке входного файла содержатся числа \(m\) и \(n\) (1 ≤ \(m\), \(n\) ≤ 100) – количество строк и столбцов соответственно. Далее идет таблица из \(m\) строк, по \(n\) чисел в каждой строке, задающая Васин рисунок. Каждое число в таблице равно 0 или 1, число 0 означает, что соответствующая клетка на рисунке белая, 1 – черная. Числа в строках разделяются пробелами.

Выходные данные

Выходной файл должен содержать \(m\) строк по \(n\) символов – карту игрового поля, \(j\)-ый символ \(i\)-ой строки должен содержать символ «*» (звездочка) если в клетке (\(i\),\(j\)) стоит мина, цифру от 1 до 8, если в этой клетке стоит соответствующее число, либо «.» (точка), если клетка (\(i\),\(j\)) пустая. Символы пробелами не разделяйте. Если построить поле, соответствующее рисунку, невозможно, выходной файл должен содержать одну строку с сообщением «No solution».

Примеры
Входные данные
3 5
1 1 1 1 1
1 1 1 1 1
0 0 0 0 0
Выходные данные
*****
23332
.....
Входные данные
3 3
0 1 0
0 0 0
0 0 0
Выходные данные
No solution
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
64 megabytes
Задано число N. Требуется найти наименьшее число с суммой цифрой, равной N, которое делится на N.

Для заданного числа \(n\) найдите наименьшее положительное целое число с суммой цифр \(n\), которое делится на \(n\).

Входные данные

Во входном файле содержатся целое число \(n\) (1 ≤ \(n\) ≤ 1000).

Выходные данные

Выходной файл должен содержать искомое число. Ведущие нули выводить не разрешается.

Примеры
Входные данные
1
Выходные данные
1
Входные данные
10
Выходные данные
190
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
64 megabytes

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

Треугольник Паскаля – это бесконечный треугольник из чисел, который имеет следующий вид:

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

Таким образом, \(i\)-ая строка содержит \(i\) + 1 число. Если обозначить \(j\)-ый элемент \(i\)-ой строки как \(a_i\),\(j_,\) то выполняется равенство \(a_i\),\(j\) = \(a_i\) - 1,\(j\) - 1 + \(a_i\)-1,\(j\). Заметим, что это равенство выполняется и для крайних элементов, если положить отсутствующие элементы предыдущей строки (элементы с номерами -1 и \(i\)) равными нулю.

Коля хочет узнать, сколько нечетных чисел в n-ой строке треугольника Паскаля. Он начал рисовать треугольник, но очень скоро тот перестал помещаться на листочек. Тогда Коля решил сделать это с помощью компьютера. Помогите ему.

Входные данные

Во входном файле содержится число \(n\) (0 ≤ \(n\) ≤ 2 ×\(10^9\)).

Выходные данные

Выходной файл должен содержать одно число – количество нечетных чисел в \(n\)-ой строке треугольника Паскаля.

Примеры
Входные данные
0
Выходные данные
1
Входные данные
5
Выходные данные
4
Входные данные
7
Выходные данные
8

Страница: << 234 235 236 237 238 239 240 >> Отображать по:
Выбрано
:
Отменить
|
Добавить в контест