---> 232 задач <---
Источники
    Личные олимпиады(938 задач)
    Командные олимпиады(684 задач)
Страница: << 28 29 30 31 32 33 34 >> Отображать по:

\(N\) кеглей выставили в один ряд, занумеровав их слева направо числами от \(1\) до \(N\). Затем по этому ряду бросили \(K\) шаров, при этом \(i\)-й шар сбил все кегли с номерами от \(l_i\) до \(r_i\) включительно. Определите, какие кегли остались стоять на месте.

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

Программа получает на вход количество кеглей \(N\) и количество бросков \(K\). Далее идет \(K\) пар чисел \(l_i\), \(r_i\), при этом \(1\le l_i\le r_i\le N\).

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

Программа должна вывести последовательность из \(N\) символов, где \(j\)-й символ есть “I”, если \(j\)-я кегля осталась стоять, или “.”, если \(j\)-я кегля была сбита.

Примеры
Входные данные
10 3
8 10
2 5
3 6
Выходные данные
I.....I...

Дан список из \(N\) (\(1 \le N \le 100000\)) целых чисел и число \(K\) (\(|K| < 100000 \)). Циклически сдвиньте список на \(|K|\) элементов вправо, если \(K\) – положительное и влево, если отрицательное число.

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

Программа получает на вход список целых чисел, затем число \(K\).

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

Выведите ответ на задачу.

Примечание

Решение должно иметь сложность \(O(N)\), то есть не должно зависеть от \(K\). Дополнительным списком пользоваться нельзя.

Примеры
Входные данные
5 3 7 4 6
3
Выходные данные
7 4 6 5 3 
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
256 megabytes

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

Расспросив папу, школьник выяснил, что количество очков, которое набрал папа, заканчивается на 5, один из победителей чемпионата стрелял раньше, а папин друг, который стрелял сразу после папы, набрал меньше очков. Теперь он заинтересовался, какое самое высокое место мог занять его папа на том чемпионате.

Будем считать, что участник соревнования занял \(k\)-е место, если ровно \((k - 1)\) участников чемпионата набрали строго больше очков, чем он. При этом победителями считались все участники чемпионата, занявшие первое место.

Требуется написать программу, которая по заданным результатам чемпионата определяет, какое самое высокое место на чемпионате мог занять папа победителя школьного этапа олимпиады по информатике.

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

Первая строка входного файла содержит целое число \(n\) — количество участников чемпионата страны по стрельбе (\(3 \le n \le 10^5\)).

Вторая строка входного файла содержит \(n\) положительных целых чисел, каждое из которых не превышает 1000, — очки участников чемпионата, приведенные в том порядке, в котором они выполняли стрельбу.

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

В выходном файле должно содержаться одно целое число — самое высокое место, которое мог занять папа школьника. Если не существует ни одного участника чемпионата, который удовлетворяет, описанным выше условиям, выведите в выходной файл число 0.

Примечание

Правильные решения для тестов, в которых \(1 \le n \le 1000\), оцениваются из 50 баллов.

Примеры
Входные данные
7
10 20 15 10 30 5 1
Выходные данные
6
Входные данные
3
15 15 10
Выходные данные
1
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
64 megabytes

По введенным значениям n, m (1 <= n <= 20, 1 <= m <= 20) заполните массив размерностью n x m числами от 1 до mn, расположив их по столбцам так, как показано в примере. Числа разделяйте одним пробелом.

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

Вводятся натуральные числа n, m (1 <= n <= 20, 1 <= m <= 20).

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

Выведите заполненный массив, разделяя числа одним пробелом.

Примеры
Входные данные
3 4
Выходные данные
1 4 7 10 
2 5 8 11 
3 6 9 12 
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

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

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

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

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

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

В первой строке входного файла содержится натуральное число N — количество доминошек (1 ≤ N ≤ 40 000).

В каждой из последующих строк содержится описание доминошки: два целых числа X и Y (0 ≤ X, Y ≤ 6) — количество точек на каждой из половинок доминошки.

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

Выведите одно число — количество пар дружных доминошек.

Примечание

Во втором тесте дружными являются следующие пары:

1-2 2-3

1-2 3-1

2-3 3-1

2-3 4-3

2-3 4-3

3-1 4-3

3-1 4-3

4-3 4-3

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

Страница: << 28 29 30 31 32 33 34 >> Отображать по:
Выбрано
:
Отменить
|
Добавить в контест