Информатика

15 732 задачивместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
Сергей Николаевич любит заниматься статистикой. В его распоряжение попался список роста всех учащихся лицея. К его огорчению все данные были записаны в произвольном порядке и к тому же занимали несколько страниц. Узнав рост самого высокого и самого низкого из учащихся, Сергей Николаевич стал искать эти данные по списку. На чтение одной записи у него уходит 1 миллисекунда. Определить сколько миллисекунд понадобится Сергею Николаевичу, чтобы найти записи о самом высоком и самом низком учениках. Если таких учеников несколько Сергей Николаевич берет первого встретившегося.

Входные данные
В первой строке вводится число N - количество людей в списке (1<N<=105). Во второй строке вводятся N чисел - рост людей в списке (каждое число в диапазоне от 100 до 220).

Выходные данные
Выведите на экран одно число - количество милисекунд, которое понадобиться Сергею Николаевичу, чтобы найти требуемые записи.
 
Примеры
Входные данные Выходные данные
1
10
112 136 165 205 122 116 177 212 107 169  
9
Сергей Николаевич любит заниматься статистикой. В его распоряжение попался список роста всех учащихся лицея. К его огорчению все данные были записаны в произвольном порядке и к тому же занимали несколько страниц. На одной странице помещается запись о 25 учащихся. Помогите Сергею Николаевичу определить на какой странице находится информация о первом самом высоком и первом самом низком учениках лицея. Страницы нумеруются с 1.

Входные данные
В первой строке вводится число N - количество людей в списке (1<N<=105). Во второй строке вводятся N чисел - рост людей в списке (каждое число в диапазоне от 100 до 220).

Выходные данные
Выведите на экран 2 числа в одной строке через пробел:
- первое число - номер страницы, на которой располагается информация о первом самом высоком ученике;
- второе число - номер страницы, на которой располагается информация о первом самом низком ученике. 
 
Примеры
Входные данные Выходные данные
1
10
112 136 165 205 122 116 177 212 107 169  
1 1

Дан массив, состоящий из N целых чисел. Напишите программу, которая выводит четные элементы массива (то есть те элементы, которые являются четными числами), имеющие четные индексы (нумерация элементов начинается с 0).

Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел, по модулю не превышающих 100.
 
Выходные данные
Необходимо вывести все четные элементы массива, имеющие четные индексы.
 
 
Примеры
Входные данные Выходные данные
1 5
1 1 3 4 6
6

Дан массив, состоящий из N целых чисел. Напишите программу, которая выводит четные элементы массива (то есть те элементы, которые являются четными числами), имеющие нечетные индексы (нумерация элементов начинается с 0).

Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел, по модулю не превышающих 100.
 
Выходные данные
Необходимо вывести в одной строке через пробел все четные элементы массива, имеющие нечетные индексы. 
 
 
Примеры
Входные данные Выходные данные
1 5
1 2 3 4 6
2 4

Дан массив, состоящий из N целых чисел. Напишите программу, которая выводит нечетные элементы массива (то есть те элементы, которые являются нечетными числами), имеющие четные индексы (нумерация элементов начинается с 0).

Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел, по модулю не превышающих 100.
 
Выходные данные
Необходимо вывести все нечетные элементы массива, имеющие четные индексы.
 
 
Примеры
Входные данные Выходные данные
1 5
1 1 3 4 6
1 3

Дан массив, состоящий из N целых чисел. Напишите программу, которая выводит нечетные элементы массива (то есть те элементы, которые являются нечетными числами), имеющие нечетные индексы (нумерация элементов начинается с 0).

Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел, по модулю не превышающих 100.
 
Выходные данные
Необходимо вывести все нечетные элементы массива, имеющие нечетные индексы.
 
 
Примеры
Входные данные Выходные данные
1 5
1 1 3 4 6
1

Дан массив, состоящий из N целых чисел. Напишите программу, которая выводит нечетные элементы массива (то есть те элементы, которые являются нечетными числами).

Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее, с новой строки, через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел, по модулю не превышающих 100.
 
Выходные данные
Необходимо вывести все нечетные элементы массива.
 
 
Примеры
Входные данные Выходные данные
1 5
1 2 3 4 5
1 3 5

Дан массив, состоящий из целых чисел. Нумерация элементов начинается с 0. Напишите программу, которая выведет элементы массива с четными индексами (0, 2, 4...).


Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее через пробел записаны N целых исел — элементы массива. 

Выходные данные
Необходимо вывести все элементы массива с чётными индексами.
 
Примеры
Входные данные Выходные данные
1 6
4 5 3 4 2 3
4 3 2
 
Входные данные
В первой строке вводится число N (1<=N<=100)  - количество элементов одномерного массива. Во второй строке вводится N целых чисел (все числа по модулю не более 100).

Выходные данные
Выведите одно число - количество отрицательных элементов.
 
Примеры
Входные данные Выходные данные
1 5
1 -5 -3 -4 5
3
Входные данные
В первой строке вводится число N (1<=N<=20)  - количество элементов одномерного массива. Во второй строке вводится N целых, не равных нулю чисел (все числа по модулю не более 100).

Выходные данные
Выведите одно число - количество положительных элементов.
 
Примеры
Входные данные Выходные данные
1 5
1 -5 -3 -4 5
2
Известно число жителей, проживающих в каждом доме улицы. Нумерация домов идет подряд, начинается с 1. Дома с нечетными номерами расположены на одной стороне улицы, с четными на другой. Определите, сколько человек живет на нечетной стороне улицы.

Входные данные
В первой строке вводится число N (1<=N<=20)  - количество элементов одномерного массива. Во второй строке вводится N целых чисел (каждое число не более 1000).

Выходные данные
Выведите одно число - количество человек, которые живут на нечетной стороне улицы.
 
Примеры
Входные данные Выходные данные
1
6
202 103 454 287 282 238 
938
Известно число жителей, проживающих в каждом доме улицы. Нумерация домов идет подряд, начинается с 1. Дома с нечетными номерами расположены на одной стороне улицы, с четными на другой. Определите, сколько человек живет на четной стороне улицы.

Входные данные
В первой строке вводится число N (1<=N<=20)  - количество элементов одномерного массива. Во второй строке вводится N целых чисел (каждое число не более 1000).

Выходные данные
Выведите одно число - количество человек, которые живут на четной стороне улицы.
 
Примеры
Входные данные Выходные данные
1
6
202 103 484 287 282 238 
628
Участники кольцевых гонок на одноколесных велосипедах нумеруются числами от 1 до N. Им предстоит проехать K кругов и победителем является тот, кто проехал их раньше всех. Участники стартуют одновременно с некоторой линии, которая называется конец круга. Каждый раз, когда участник пересекает эту линию, его номер фиксируется автоматической системой с высокой точностью (то есть два участника не могут пересечь эту линию одновременно). После прохождения K кругов эта же линия является финишной прямой. К сожалению, некоторые участники сходят с дистанции и проезжают меньшее количество кругов.
Организаторы соревнования забыли число K и стесняются спросить его у участников. Помогите организаторам определить победителя соревнования, используя только записи с системы фиксации. Гарантируется, что хотя бы один из участников преодолел необходимые K кругов и никто из участников не проехал более K кругов. Первая фиксация номера участника происходит после
прохождения первого круга.

Формат входных данных
В первой строке задаются целые числа N и M (1 ≤ N ≤ 100, 1 ≤ M ≤ 10000) — количество участников соревнования и записей с системы фиксации соответственно. Во второй строке задается M целых чисел от 1 до N – номера участников в том порядке, как
они фиксировались системой.

Формат выходных данных
Выведите одно число — номер победителя
 
 
Примеры
Входные данные Выходные данные
1 3 4
1 3 3 1
3
2 3 5
1 1 2 3 1
1
По данным натуральным n и k вычислите значение \(C^k_n = {n! \over k!(n-k)!}\) (число сочетаний из n элементов по k).

Входные данные
Вводятся 2 числа - n и k (n, k ≤ 30 ).

Выходные данные
Необходимо вывести  значение \(C^k_n\) (целое число).
 
Примеры
Входные данные Выходные данные
1 2
1
2
✓ 19✗ 11700средняяВойти и решать
По данному натуральному n вычислите сумму \(1^2+2^2+...+n^2\).

Входные данные
Вводится единственное натуральное число n, не превосходящее 100.

Выходные данные
Необходимо вывести  вычисленную сумму.

Примеры
Входные данные Выходные данные
1 2 5
✓ 44✗ 21500лёгкаяВойти и решать
Для биномиальных коэффициентов (числа сочетаний из n по k) хорошо известна рекуррентная формула: \(C^k_n=C^{k-1}_{n-1}+C^{k}_{n-1}\)\(C^0_n = C^n_n=1\).
Входные данные
Вводится 2 числа - n и k.

Выходные данные
Необходимо вывести  значение  \(С^k_n\) .
 
Примеры
Входные данные Выходные данные
1 4 2 6
Билет на одну поездку в метро стоит 15 рублей, билет на 5 поездок стоит 70 рублей, билет на 10 поездок стоит 125 рублей, билет на 20 поездок стоит 230 рублей, билет на 60 поездок стоит 440 рублей. Пассажир планирует совершить n поездок. Определите, сколько билетов каждого вида он должен приобрести, чтобы суммарное количество оплаченных поездок было не меньше n, а общая стоимость приобретенных билетов – минимальна.

Входные данные
Дано одно число n - количество поездок.

Выходные данные
Выведите пять целых чисел, равные необходимому количеству билетов на 1, на 5, на 10, на 20, на 60 поездок. Если для какого-то данного n существует несколько способов приобретения билетов одинаковой стоимости, необходимо вывести ту комбинацию билетов, которая дает большее число поездок.

Примеры
Входные данные Выходные данные
1 1 1 0 0 0 0 
Билет на одну поездку в метро стоит 15 рублей, билет на 10 поездок стоит 125 рублей, билет на 60 поездок стоит 440 рублей. Пассажир планирует совершить n поездок. Определите, сколько билетов каждого вида он должен приобрести, чтобы суммарное количество оплаченных поездок было не меньше n, а общая стоимость приобретенных билетов – минимальна.

Входные данные
Дано одно число n - количество поездок.

Выходные данные
Выведите три целых числа, равные необходимому количеству билетов на 1, на 10, на 60 поездок.
 
Примеры
Входные данные Выходные данные
1 129 0 1 2
Поле шахматной доски определяется парой чисел (a, b), каждое от 1 до 8, первое число задает номер столбца, второе – номер строки. Заданы две клетки. Определите, может ли шахматный король попасть с первой клетки на вторую за один ход.

Входные данные
Даны 4 целых числа от 1 до 8 каждое, первые два задают начальную клетку, вторые два задают конечную клетку. Начальная и конечная клетки не совпадают. Числа записаны в отдельных строках.

Выходные данные
Программа должна вывести YES, если из первой клетки ходом короля можно попасть во вторую, или NO в противном случае.
 
Примеры
Входные данные Выходные данные
1 4
4
5
5
YES
На плоскости даны N точек. Вам требуется построить выпуклую оболочку данного множества точек. Выведите два числа: периметр и площадь.

Входные данные
Первая строка содержит количество точек N, 1≤N≤10000. Каждая из последующих N строк содержит два целых числа – координаты xi и yi. Все числа по модулю не превосходят 104.

Выходные данные
Вывести два числа: периметр и площадь выпуклой оболочки.
 
Примеры
Входные данные Выходные данные
1 4
0 0
3 4
3 1
6 0
16.0000000000
12.0000000000
Поделиться
Класснуть