Темы --> Информатика
    Язык программирования(952 задач)
    Алгоритмы(1657 задач)
    Структуры данных(279 задач)
    Интерактивные задачи(17 задач)
    Другое(54 задач)
---> 2656 задач <---
Источники
    Личные олимпиады(938 задач)
    Командные олимпиады(684 задач)
Страница: << 244 245 246 247 248 249 250 >> Отображать по:
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

«Нарисуйте» с помощью символов на экране лес. При этом не пользуйтесь командами перемещения курсора по экрану. Ваша программа должна последовательно выводить символы строк (или строки целиком).

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

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

Елочки должны изображаться символами «#» (решеточка), а пустые места между ними — символами «.» (точка). Во всех строках должно быть выведено одинаковое количество символов, при этом обязательно должна быть строка, в которой последним символом является решеточка, в последней строке обязательно должны быть решеточки (т.е. должен быть выведен прямоугольник из точек и решеточек, в нем не должно быть лишних столбцов и строк).

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

Вводится число елочек \(N\), а дальше \(N\) пар натуральных чисел, описывающих елочки: первое число каждой пары задает количество треугольников в елочке, а второе — размер самого маленького треугольника. Елочки описываются в порядке слева направо (если смотреть на вершины елочек).

Гарантируется, что входные данные будут таковы, что количество символов, которое нужно будет вывести в одной строке, не превысит 79.

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

Выведите требуемый «рисунок». Для лучшего понимания смотрите примеры.

Примеры
Входные данные
2
3 2
3 3
Выходные данные
...#......#....
..###....###...
...#....#####..
..###.....#....
.#####...###...
...#....#####..
..###..#######.
.#####....#....
#######..###...
........#####..
.......#######.
......#########
Входные данные
3
1 1
2 1
3 2
Выходные данные
#.#...#...
..#..###..
.###..#...
.....###..
....#####.
......#...
.....###..
....#####.
...#######
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

У Пети имеется неограниченный набор красных, синих и зеленых плиток размером 1×1. Он выбирает ровно N плиток и выкладывает их в полоску. Например, при N = 10 она может выглядеть следующим образом:


К

К

К

С

З

К

К

З

К

С


(Буквой К обозначена красная плитка, С – синяя, З – зеленая)

После этого Петя заполняет следующую таблицу:



красный

синий

зеленый

красный

Y

Y

Y

синий

Y

N

Y

зеленый

Y

Y

N


В клетке на пересечении строки, отвечающей цвету А, и столбца, отвечающего цвету Б, он записывает "Y", если в его полоске найдется место, где рядом лежат плитки цветов А и Б и "N" в противном случае. Считается, что плитки лежат рядом, если у них есть общая сторона. (Очевидно, что таблица симметрична относительно главной диагонали – если плитки цветов А и Б лежали рядом, то рядом лежали и плитки цветов Б и А.) Назовем такую таблицу диаграммой смежности данной полоски.

Так, данная таблица представляет собой диаграмму смежности приведенной выше полоски.

Петя хочет узнать, сколько различных полосок имеет определенную диаграмму смежности. Помогите ему.

(Заметьте, что полоски, являющиеся отражением друг друга, но не совпадающие, считаются разными. Так, полоска


С

К

З

К

К

З

С

К

К

К


не совпадает с полоской, приведенной в начале условия.)

Формат входных данных

Первая строка входного файла содержит число N. (1 N 100). Следующие три строки входного файла, содержащие по три символа из набора {"Y", "N"}, соответствуют трем строкам диаграммы смежности. Других символов, включая пробелы, во входном файле не содержится. Входные данные корректны, т.е. диаграмма смежности симметрична.

Формат выходных данных

Выведите в выходной файл количество полосок длины N, имеющих приведенную во входном файле диаграмму смежности.

Примеры

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

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

10

YYY

YNY

YYN

4596

3

YYY

YYY

YYY

0


#1856
  
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes
Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0 до 100 – баллы учащихся выпускного класса за итоговый тест по информатике. Для получения положительной оценки за тест требовалось набрать не менее 20 баллов. Опишите на русском языке или на одном из языков программирования алгоритм, который позволяет найти и вывести минимальный балл среди учащихся, получивших за тест положительную оценку. Известно, что в классе хотя бы один учащийся получил за тест положительную оценку. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.

Паскаль
Const
  N=30; 
var
  a: array [1..N] of integer; 
  i, j, min: integer; 
begin
  for i:=1 to N do 
    read(a[i]);
  ...
end.
Бейсик
N=30
DIM A(N) AS INTEGER
DIM I, J, MIN AS INTEGER
FOR I = 1 TO N
INPUT A(I)
NEXT I
...
END
#include  
#define N 30 
void main(void) 
{
  int a[N]; 
  int i, j, min; 
  for (i=0; i‹N; i++)
    scanf("%d", &a[i]); 
  ...
}
Естественный язык
Объявляем массив A из 30 элементов. 
Объявляем целочисленные переменные I, J, MIN.
В цикле от 1 до 30 
  вводим элементы массива A с 1-го по 30-й.
...
В качестве ответа Вам необходимо привести программу, заполнив многоточие. Вы можете записать решение также на другом языке программирования В этом случае вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии.

Примеры
Входные данные
34 2 43 34 12 42 31 23 24 45 34 2 43 34 12 42 31 23 24 45 34 2 43 34 12 42 31 23 24 45
Выходные данные
23
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
263 megabytes

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

Сохраняя хладнокровие, Василиса решает в уме сложную задачу. Она хочет сотворить между собой и преследователями волшебный лес. Этот лес будет представлять собой \(n\) рядов деревьев, идущих строго с запада на восток. В каждом ряду будет также \(n\) деревьев, образующих вместе \(n\) рядов, идущих строго с севера на юг. Более того, суммарная высота деревьев в \(i\)-м ряду с запада на восток должна составлять ровно \(a_i\) метров, а суммарная высота деревьев в \(j\)-м ряду с севера на юг — ровно \(b_j\) метров. Наконец, высота каждого дерева должна выражаться целым числом метров. Сотвори такой лес — и преследователи будут без толку плутать по нему, пока волшебство не ослабнет и лес не исчезнет.

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

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

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

В первой строке входного файла задано целое число \(n\) (\(2 \le n \le 1000\)). Во второй строке заданы \(n\) целых чисел \(a_1, a_2, \ldots, a_n\) через пробел — сумма высот деревьев в рядах, идущих с запада на восток (\(0 \le a_i \le 10^6\)). В третьей строке заданы \(n\) целых чисел \(b_1, b_2, \ldots, b_n\) через пробел — сумма высот деревьев в рядах, идущих с севера на юг (\(0 \le b_j \le 10^6\)).

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

Если сотворить волшебный лес с данными параметрами невозможно, выведите «NO» в первой строке выходного файла. Иначе в первой строке выведите «YES», а в следующих \(n\) строках по \(n\) целых неотрицательных чисел через пробел в каждой — высоты деревьев. Сумма чисел в \(i\)-й из последних \(n\) строк должна равняться \(a_i\), а сумма чисел в \(j\)-м столбце должна равняться \(b_j\). Максимальное число в ответе должно быть минимально возможным. Если правильных ответов несколько, можно выводить любой из них.

Примеры
Входные данные
2
1 3
2 2
Выходные данные
YES
1 0 
1 2 
Входные данные
2
1 3
2 4
Выходные данные
NO
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
263 megabytes

Однажды \(n\) котят решили покушать пирожков. Однако котят много, поэтому им непросто выбрать начинку, которая всех порадует. Известно, что группа из не более чем \(k\) котят всегда может прийти к консенсусу, а вот большая группа обязательно разобъётся на две, принципиально несогласные друг с другом. Котята — существа справедливые, поэтому размеры этих групп будут отличаться не более, чем на один.

Группы, размер которых всё ещё окажется больше \(k\) после такого разделения, продолжат спорить и разделяться на меньшие по тому же принципу. Определите, сколько групп котят в итоге отправятся за пирожками.

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

В единственной строке входного файла записаны целые числа \(n\) и \(k\) — количество котят и критический размер группы, соответственно (\(1 \le n, k \le 10^{100}\)). Числа записаны без ведущих нулей.

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

Выведите единственное целое число — итоговое количество групп. Число должно быть также записано без ведущих нулей.

Примеры
Входные данные
17 4
Выходные данные
5

Страница: << 244 245 246 247 248 249 250 >> Отображать по:
Выбрано
:
Отменить
|
Добавить в контест