Экзамены и диагностики

10 013 задачвместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
Обозначим через a%b остаток от деления натурального числа a на натуральное число b, а через a//b – целую часть от деления a на b. Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1, если n = 0,
F(n) = F(n // 8) · (n % 8), если n > 0 и n нечётно;
F(n) = F(n // 8), если n > 0 и n чётно.
Определите количество значений n, таких что 89 ≤ n ≤ 6 ·89, для которых F(n) = 35.
Обозначим через a%b остаток от деления натурального числа a на натуральное число b, а через a//b – целую часть от деления a на b. Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1, если n = 0,
F(n) = F(n // 10) · (n % 10), если n > 0 и n нечётно;
F(n) = F(n // 10), если n > 0 и n чётно.
Определите количество значений n, таких что 109 ≤ n ≤ 1010, для которых F(n) = 49.
Обозначим через a%b остаток от деления натурального числа a на натуральное число b, а через a//b – целую часть от деления a на b. Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1, если n = 0,
F(n) = F(n // 10) · (n % 10), если n > 0 и n нечётно;
F(n) = F(n // 10), если n > 0 и n чётно.
Определите количество значений n, таких что 109 ≤ n ≤ 6 ·109, для которых F(n) = 15.
Обозначим через a%b остаток от деления натурального числа a на натуральное число b, а через a//b – целую часть от деления a на b. Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 0, если n = 0,
F(n) = F(n // 8) + n % 8, если n > 0 и n нечётно;
F(n) = F(n // 8), если n > 0 и n чётно.
Определите количество значений n, таких что 89 ≤ n ≤ 810, для которых F(n) = 1
Обозначим через a%b остаток от деления натурального числа a на натуральное число b, а через a//b – целую часть от деления a на b. Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 0, если n = 0,
F(n) = F(n // 8) + n % 8, если n > 0 и n чётно;
F(n) = F(n // 8), если n > 0 и n нечётно.
Определите количество значений n, таких что 89 ≤ n ≤ 810, для которых F(n) = 2.
Обозначим через a%b остаток от деления натурального числа a на натуральное число b, а через a//b – целую часть от деления a на b. Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 0, если n = 0,
F(n) = F(n // 8) + n % 8, если n > 0 и n нечётно;
F(n) = F(n // 8), если n > 0 и n чётно.
Определите количество значений n, таких что 89 ≤ n ≤ 810, для которых F(n) = 0
Обозначим через a%b остаток от деления натурального числа a на натуральное число b, а через a//b – целую часть от деления a на b. Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 0, если n = 0,
F(n) = F(n // 8) + n % 8, если n > 0 и n чётно;
F(n) = F(n // 8), если n > 0 и n нечётно.
Определите количество значений n, таких что 89 ≤ n ≤ 810, для которых F(n) = 0.
Обозначим через a%b остаток от деления натурального числа a на натуральное число b, а через a//b – целую часть от деления a на b. Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 0, если n = 0,
F(n) = F(n // 10) + n % 10, если n > 0 и n нечётно;
F(n) = F(n // 10), если n > 0 и n чётно.
Определите количество значений n, таких что 109 ≤ n ≤ 6·109, для которых F(n) = 1.
Обозначим через a%b остаток от деления натурального числа a на натуральное число b, а через a//b – целую часть от деления a на b. Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 0, если n = 0,
F(n) = F(n // 10) + n % 10, если n > 0 и n чётно;
F(n) = F(n // 10), если n > 0 и n нечётно.
Определите количество значений n, таких что 109 ≤ n ≤ 6 ·109, для которых F(n) = 2.
Обозначим через a%b остаток от деления натурального числа a на натуральное число b, а через a//b – целую часть от деления a на b. Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 0, если n = 0,
F(n) = F(n // 10) + n % 10, если n > 0 и n нечётно;
F(n) = F(n // 10), если n > 0 и n чётно.
Определите количество значений n, таких что 109 ≤ n ≤ 6·109, для которых F(n) = 0.
Обозначим через a%b остаток от деления натурального числа a на натуральное число b, а через a//b – целую часть от деления a на b. Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 0, если n = 0,
F(n) = F(n // 10) + n % 10, если n > 0 и n чётно;
F(n) = F(n // 10), если n > 0 и n нечётно.
Определите количество значений n, таких что 109 ≤ n ≤ 5·109, для которых F(n) = 0.
Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = n, если n ≥ 5000,
F(n) = n · F(n + 1), если n < 5000 и n не делится на 5;
F(n) = n · F(n + 2) / 5, если n < 5000 и n делится на 5.
Чему равно значение выражения F(4975) / F(4978)?
Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = n, если n ≥ 1900,
F(n) = n · F(n + 1), если n < 1900 и n не делится на 3;
F(n) = n · F(n + 2) / 3, если n < 1900 и n делится на 3.
Чему равно значение выражения F(1875) / F(1880)?
Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = n, если n ≥ 1300,
F(n) = n · F(n + 1), если n < 1300 и n – нечётное;
F(n) = n · F(n + 2) / 4, если n < 1300 и n – чётное.
Чему равно значение выражения F(1286) / F(1290)?
Ты тренер покемонов и хочешь предсказать общую силу покемона (Total) на основе его характеристик!

Датасет содержит информацию о 721 покемоне с характеристиками:​

  • HP — очки здоровья

  • Attack — сила атаки

  • Defense — защита

  • Sp. Atk — специальная атака

  • Sp. Def — специальная защита

  • Speed — скорость

  • Total — общая сила (сумма всех характеристик) — это наша цель!

  • Type 1, Type 2 — типы покемона (Fire, Water, Grass и т.д.)​

  • Generation — поколение (1-6)​

  • Legendary — легендарный ли покемон (True/False)


Выполни следующее

  1. Загрузи и подготовь данные
  2. Раздели данные на обучающую и тестовую выборки:
    Параметры разделения:
    • разметр тестовой выборки равен 20% (~144 покемона)
    • random_state=42 
  3. Обучи модель
  4. Сделай предсказания на тестовой выборке
  5. Вычисли метрики качества (R2, MAE, RMSE)
  6. Выведи на экран значение каждой метрики (с точностью до 2-х знаков после запятой): в первой строке выведи значение R2 , во второй - MAE, в третьей - RMSE.

Для тестирования своей программы можно скачать датасет по этой ссылке
Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в кучу четыре камня или увеличить количество камней в куче в два раза. Чтобы делать ходы, у каждого игрока есть неограниченное количество камней. Игра завершается, когда количество камней в куче становится не менее 20. Если при этом в куче оказалось не более 26 камней, то победителем считается игрок, сделавший последний ход. В противном случае победителем становится его противник (при этом победа учитывается как ход противника). В начальный момент в куче было S камней, 1 ≤ S ≤ 19.

Задание 19. 
Найдите минимальное значение S, при котором Петя не может выиграть за один ход, но Ваня может выиграть своим первым ходом после любого хода Пети.

Задание 20.
Найдите наименьшее и наибольшее значения S, когда Петя имеет выигрышную стратегию, причём одновременно выполняются два условия:
– Петя не может выиграть за один ход;
– Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
Найденные значения запишите в ответе в порядке возрастания.

Задание 21
Найдите значение S, при котором одновременно выполняются два условия:
– у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;
– у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.

На каждый вопрос вводите ответ в отдельной строке. Если ответ на вопрос содержит несколько значений, то разделяйте их одним пробелом.
Два игрока, Петя и Ваня, играют в следующую игру. У игроков есть табличка, в которую записана пара неотрицательных целых чисел.  Будем называть эту пару чисел позицией. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может заменить одно из чисел пары (по своему выбору) на сумму обоих чисел. Так, например, если перед ходом игрока была позиция (2, 20), то после его хода будет позиция (22,20) или (2, 22). Игра завершается в тот момент, когда сумма чисел пары станет не менее 62. Победителем считается игрок, сделавший последний ход, т.е. первым получивший в сумму чисел пары 62 и более. В начальный момент в табличке записана пара чисел (10, S), 1 ≤ S ≤ 51. Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника.

Задание 19. 
Укажите наименьшее значение S, при котором Петя может выиграть за один ход.

Задание 20.
Найдите два наибольших значения S, когда Петя имеет выигрышную стратегию, причём одновременно выполняются два условия:
– Петя не может выиграть за один ход;
– Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
Найденные значения запишите в ответе в порядке возрастания.

Задание 21
Найдите количество значений S, при которых одновременно выполняются два условия:
– у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;
– у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.  


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