Информатика

2 621 задачавместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
Расстояние Хэмминга между двумя целыми числами - это количество позиций, в которых соответствующие биты различаются.
Для заданных двух целых чисел x и y, найдите расстояние Хэмминга между ними.

Входные данные
Программа получает на вход два целых числа x и y. Каждое число записано в отдельной строке.
 

Ограничения

  • 0 <= x, y <= 231 - 1

Выходные данные
Выведите ответ на задачу.
 
 
Примеры
Входные данные Выходные данные Примечание
1
1
4
2
1   (0 0 0 1)
4   (0 1 0 0)

Магистр Максимус создал массив из n неотрицательных целых чисел, но чтобы сохранить его в тайне, он преобразовал его в другой массив encoded длиной n-1. Каждый элемент encodedi был получен путем выполнения операции XOR над двумя соседними элементами arr[i] и arr[i+1]. Например, если исходный массив arr = [1,0,2,1], то полученный массив encoded = [1,2,3].

Теперь Магистр Максимус хочет передать эту тайну другому волшебнику, но ему нужно вернуться к исходному массиву arr. Однако у него есть подсказка - первый элемент arr равен first.

Помогите Магистру Максимусу восстановить исходный массив arr! Мы уверены, что ответ существует и является уникальным. Расшифруйте тайну и восстановите массив arr.



Входные данные
Программа получает на вход в первой строке число n - количество элементов исходного массива. Вторая строка содержит n-1 число encodedi - элементы закодированного массива. 
 

Ограничения

  • 2 <= n <= 104
  • Длина массива encoded == n - 1
  • 0 <= encodedi <= 105
  • 0 <= first <= 105


Выходные данные
Выведите n чисел в однй строку через пробел - элементы исходного массива arr.
 
 
Примеры
Входные данные Выходные данные
1
4 
1 2 3 
1
1 0 2 1
2
5
6 2 7 3
4
4 2 0 7 4
Когда-то давно, в мире чисел произошло необычное событие. Числа начали обретать новое свойство - свойство "установленных битов". Если представить число в двоичной системе, то установленные биты - это цифры, которые равны единице.
Ваш задача заключается в том, чтобы подсчитать сумму элементов в массиве nums, чьи индексы содержат ровно k таких установленных битов. 

Входные данные
Программа получает на вход в первой строке число n - количество элементов в массиве nums. Во второй строке записаны n чисел numsi - элементы массива. В третьей строке записано число k.
 

Ограничения:

  • 1 <= n <= 1000
  • 1 <= nums[i] <= 105
  • 0 <= k <= 10
  • 0 <= i < n


Выходные данные
Выведите ответ на задачу.
 
 
Примеры
Входные данные Выходные данные
1
5
5 10 1 5 2
1
13
2
4
4 3 2 1
2
1
Магистр Максимус путешествует по Дороге Вечности, где волшебные порталы расположены через каждые K метров от начала дороги. Волшебные порталы способны транспортировать магистра Максимуса в различные миры-измерения, где он может получить новые знания, навыки и магические силы. Магистр Максимус прошел N метров, когда внезапно ощутил волшебную усталость. Он желает найти ближайший волшебный портал, чтобы погрузиться в новое измерение и получить свежую порцию магии.
Помогите Максимусу определить, сколько метров ему осталось пройти, чтобы достичь ближайшего волшебного портала на Дороге Вечности и открыть для себя новые миры волшебства и приключений.


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

Ограничения
  • 1 <= K <= 2 × 109
  • 1 <= N <= 2 × 109

Выходные данные
Программа должна вывести одно целое число — расстояние до ближайшей остановки.
 
Примеры
Входные данные Выходные данные
1 600
2000
200

В компании работает n сотрудников, пронумерованных от 0 до n-1. I-й сотрудник (сотрудник с номером i)  отработал hoursi часов в компании. Назовем нормой определенное количество часов, установленное компанией, в рамках которой сотрудники должны выполнять свои обязанности. Руководство компании установила норму на уровне не менее t часов. 

Определите количество сотрудников, которые отработали норму.


Входные данные
Программа получает на вход в первой строке натуральное число n - количество сотрудников в компании. Вторая строка содержит n чисел hoursi - количество часов, отработанных i-м сотрудником. Третья строка содержит число t.
 

Ограничения

  • 1 <= n <= 50
  • 0 <= i <= n-1
  • 0 <= hoursi, t <= 105


Выходные данные
Выведите ответ на задачу.
 
 
Примеры
Входные данные Выходные данные
1
5
0 1 2 3 4
2
3
2
5
5 1 4 2 2
6
0
Магистр Максимус со своим верным другом фокусником Феликсом играют в игру камушки. Правила этой игры описаны ниже.
  • Вначале на столе лежит куча камней.
  • Ходы Максимуса и Феликса чередуются по очереди, причем Максимус всегда ходит первым.
  • На каждом ходу тот, чья очередь подошла, убирает от 1 до 3 камней из кучи.
  • Побеждает тот, кто уберет последний камень.
Учитывая n - количество камней в куче, верните имя того, кто победит в игре, при условии, что и Максимус, и Феликс всегда играют оптимально.

Входные данные
Программа получает на вход натуральное число n - количество камней в куче (1<= n <= 231 - 1).

Выходные данные
Выведите одну из английских букв: M, если победит в игре Максимус и F - если победит Феликс.
 
 
Примеры
Входные данные Выходные данные
1 4 F
2 2 M
Трое волшебников из округа Феймарч защищают свою землю от темных сил. Каждый волшебник обладает своей собственной магической силой. Первый волшебник имеет магическую силу равную MP1, второй – MP2, третий – MP3. 
Три волшебника смогут победить темные силы, если как минимум у двоих из них сила будет не меньше, чем у темных сил.
Определите, какую максимальную силу могут выдержать эти волшебники, чтобы успешно справиться с темными силами.

Входные данные
Программа получает на вход три целых положительных числа MP1, MP2MP3, не превосходящие 2×109, – магические силы каждого из волшебников. 

Выходные данные
Программа должна вывести одно число – максимальную силу, которую они смогут победить.
 
 
Примеры
Входные данные Выходные данные
1 30
10
20
20
Трое волшебников из округа Феймарч защищают свою землю от темных сил. Каждый волшебник обладает своей собственной магической силой. Первый волшебник имеет магическую силу равную MP1, второй – MP2, третий – MP3. 
Три волшебника смогут победить темные силы, если как минимум у двоих из них сила будет не меньше, чем у темных сил.
Определите, какую максимальную силу могут выдержать эти волшебники, чтобы успешно справиться с темными силами.

Входные данные
Программа получает на вход три целых положительных числа MP1, MP2MP3, не превосходящие 2×109, – магические силы каждого из волшебников. 

Выходные данные
Программа должна вывести одно число – максимальную силу, которую они смогут победить.
 
 
Примеры
Входные данные Выходные данные
1 30
10
20
20
Даны два целочисленных массива nums1 и nums2. Выведите в первой строке в порядке возрастания все элементы первого массива, которых нет во втором массиве. Во второй строке выведите в порядке возрастания все элементы второго массива, которых нет в первом. Обратите внимание, элементы в первой строке должны быть уникальны, элементы во второй строке также должны быть уникальны.

Формат входных данных 
В первой строке записано число n - количество элементов массива nums1. Вторая строка содержит n чисел nums1i - элементы массива. Треться строка содержит число m - количество элементов массива nums2. Четвертая строка содержит m чисел nums2i - элементы массива.

Ограничения

  • 1 <= длина массива nums1 и длина массива nums2 <= 1000
  • 0 <= nums1i, nums2i <= 1000

Формат выходных данных 
Выведите результирующий массив. Все элементы должны быть выведены в одной строке через пробел.
✓ 107✗ 173400лёгкаяВойти и решать
Даны два целочисленных массива nums1 и nums2. Обновите элементы массива nums1, оставив только уникальные среди тех, которые присутствуют в массиве nums1 и в nums2, но не в обоих сразу. Выведите все уникаьлные элементы массива nums1 после обновления. Элементы должны быть выведены в порядке возрастания.

Программа не должна содержать каких-либо дополнительных массивов или других переменных, кроме указанных двух.

Входные данные
В первой строке записано число n - количество элементов массива nums1. Вторая строка содержит n чисел nums1i - элементы массива. Треться строка содержит число m - количество элементов массива nums2. Четвертая строка содержит m чисел nums2i - элементы массива.

Ограничения

  • 1 <= длина массива nums1 и длина массива nums2 <= 1000
  • 0 <= nums1i, nums2i <= 1000


Выходные данные
Выведите результирующий массив. Все элементы должны быть выведены в одной строке через пробел.
 
 
Примеры
Входные данные Выходные данные
1
3
4 9 5 
5
9 4 9 8 4
5 8
✓ 79✗ 127500лёгкаяВойти и решать
Даны два целочисленных массива nums1 и nums2. Удалите из массива nums1 элементы, которые есть в nums2. Выведите все уникальные элементы массива nums1 после удаления. Элементы должны быть выведены в порядке возрастания.

Программа не должна содержать каких-либо дополнительных массивов или других переменных, кроме указанных двух.

Входные данные
В первой строке записано число n - количество элементов массива nums1. Вторая строка содержит n чисел nums1i - элементы массива. Треться строка содержит число m - количество элементов массива nums2. Четвертая строка содержит m чисел nums2i - элементы массива.

Ограничения

  • 1 <= длина массива nums1 и длина массива nums2 <= 1000
  • 0 <= nums1i, nums2i <= 1000


Выходные данные
Выведите результирующий массив. Все элементы должны быть выведены в одной строке через пробел.
 
 
Примеры
Входные данные Выходные данные
1
3
4 9 5 
5
9 4 9 8 4
5
✓ 97✗ 159500лёгкаяВойти и решать
Даны два целочисленных массива nums1 и nums2. Сформируйте третий массив путем объединения элементов заданных двух массивов. Каждый элемент результирующего массива должен быть уникальным. Элементы должны быть выведены в порядке возрастания.

Формат входных данных 
В первой строке записано число n - количество элементов массива nums1. Вторая строка содержит n чисел nums1i - элементы массива. Треться строка содержит число m - количество элементов массива nums2. Четвертая строка содержит m чисел nums2i - элементы массива.

Ограничения

  • 1 <= длина массива nums1 и длина массива nums2 <= 1000
  • 0 <= nums1i, nums2i <= 1000

Формат выходных данных 
Выведите результирующий массив. Все элементы должны быть выведены в одной строке через пробел. 
Даны два целочисленных массива nums1 и nums2. Сформируйте третий массив путем пересечения элементов заданных двух массивов. Каждый элемент результирующего массива должен быть уникальным. Элементы должны быть выведены в порядке возрастания.

Входные данные
В первой строке записано число n - количество элементов массива nums1. Вторая строка содержит n чисел nums1i - элементы массива. Треться строка содержит число m - количество элементов массива nums2. Четвертая строка содержит m чисел nums2i - элементы массива.

Ограничения

  • 1 <= длина массива nums1 и длина массива nums2 <= 1000
  • 0 <= nums1i, nums2i <= 1000


Выходные данные
Выведите результирующий массив. Все элементы должны быть выведены в одной строке через пробел в порядке возрастания.
 
 
Примеры
Входные данные Выходные данные
1
3
4 9 5 
5
9 4 9 8 4
4 9
✓ 78✗ 116400лёгкаяВойти и решать
Магистр Аркадий любит работать со строками и создавать для них шаблоны. Сейчас у Аркадия есть строка-шаблон и строка s. Аркадий хочет, чтобы вы определили подходит ли данная строка-шаблон для строки s.

Строка-шаблон подходит для строки s, если существует взаимно однозначное соответствие между буквой в шаблоне и непустым словом в s.

Входные данные
Программа получает на вход две строки: строку-шаблон и строка s.

Выходные данные
Выведите YES, если строка-шаблон  подходит для строки s, и NO в противном случае.
 
 
Примеры
Входные данные Выходные данные
1
abba
dog cat cat dog
YES
2
abba
dog cat cat fish
NO
✓ 47✗ 92600лёгкаяВойти и решать
Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = n, если n < 11,
F(n) = n + F(n­ –1), если n ≥ 11


По заданным числам A и B вычислите значение выражения F(A) – F(B)?

Входные данные
А и B вводятся с клавиатуры (2000 <= A, B <= 5000). Каждое число в отдельной строке.

Выходные данные
Выведите ответ на задачу.
 
Примеры
Входные данные Выходные данные
1 2023
2007
32248
Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 7, если n < 7,
F(n) = n + 1 + F(n­ –2), если n ≥ 7.


По заданным числам A и B вычислите значение выражения F(A) – F(B)?

Входные данные
А и B вводятся с клавиатуры (2000 <= A, B <= 5000). Каждое число в отдельной строке.

Выходные данные
Выведите ответ на задачу.
 
Примеры
Входные данные Выходные данные
1 3000
2000
1251000
Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 3, если n < 3,
F(n) = 2n + 5 + F(n­ – 2), если n ≥ 3.


По заданным числам A и B вычислите значение выражения F(A) – F(B)?

Входные данные
А и B вводятся с клавиатуры (2000 <= A, B <= 5000). Каждое число в отдельной строке.

Выходные данные
Выведите ответ на задачу.
 
Примеры
Входные данные Выходные данные
1 3000
2000
2503500
У исполнителя Счетовод две команды, которым присвоены номера:
1. прибавь A
2. прибавь B
3. умножь на С

Первая из них увеличивает на A число на экране, вторая увеличивает число на экране на B, третья умножает число на экране на С. Программа для Счетовода – это последовательность команд. Сколько существует таких программ, которые исходное число S преобразуют в число F и при этом траектория вычислений программы содержит число num1 и число num2?

Гарантируется, что имеется хотя бы одна программа, которая получает из числа S число F, A не равно B.

Входные данные
Программа получает на вход семь чисел в следующем порядке: A, B, C, S, F, num1, num2 (1<= A,B,C <= 10, 1 <= S <= 100, 1 <= F <= 103, S <= num1 < num2 <= F). Каждое число вводится с новой строки.

Выходные данные
Выведите ответ на задачу. Гарантируется, что ответ не превышает 263.
 
Примеры
Входные данные Выходные данные
1 1
2
2
3
13
9
11
68
У исполнителя Счетовод две команды, которым присвоены номера:
1. прибавь 1
2. сделай четное
3. сделай нечетное

Первая из них увеличивает на 1 число на экране, вторая умножает это число на 2, третья переводит число x в число 2x + 1. Например, вторая команда переводит число 10 в число 20, а третья переводит число 10 в число 21. 
Программа для Счетовода – это последовательность команд. Сколько есть программ, которые число S преобразуют в число F?
Гарантируется, что имеется хотя бы одна программа, которая получает из числа S число F.

Входные данные
Программа получает на вход два числа: S, F (1 <= S <= 100, 1 <= F <= 103)

Выходные данные
Выведите ответ на задачу. Гарантируется, что ответ не превышает 263.
 
Примеры
Входные данные Выходные данные
1 2
16
40
В фантастическом лесу живут различные существа, каждое из которых имеет свой уникальный номер, начинающийся с 1. Также у каждого существа есть свой уровень энергии, представленный целым числом. У первого существа уровень энергии равен 1. Каждое последующее существо имеет уровень энергии, который зависит от уникального номера существа. В общем виде уровень энергии существа можно выразиить следующим образом:
  • creature[1] = 1
  • creature[2 * i] = creature[i], если  2 <= 2 * i <= n
  • creature[2 * i + 1] = creature[i] + creature[i + 1], при  2 <= 2 * i + 1 <= n
Чтобы понять, насколько могущественны существа в лесу, необходимо найти существо с максимальным уровенем энергии.


Входные данные
Программа получает на вход натуральное число n (1 <= n <= 100) - количество существ в фантастическом лесу.

Выходные данные
Выведите максимальный уровень энергии среди всех существ в данном фантастическом лесу.
 
 
Примеры
Входные данные Выходные данные
1 1 1
2 7 3
3 3 2
Поделиться
Класснуть