Информатика

4 314 задачвместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в кучу один или четыре камня либо увеличить количество камней в куче в три раза.
У каждого игрока есть неограниченное количество камней, чтобы делать ходы. Игра завершается в тот момент, когда количество камней в куче становится не менее 52. Победителем считается игрок, сделавший последний ход, т.е. первым получивший кучу, состоящую из 52 или более камней. В начальный момент в куче было S камней; 1 ≤ S ≤ 51. Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника.
Задание 19. 
Укажите минимальное значение S, при котором Петя не может выиграть за один ход, но при любом ходе Пети Ваня может выиграть своим первым ходом.
Задание 20.
Найдите два наименьших значения S, когда Петя имеет выигрышную стратегию, причём одновременно выполняются два условия:
– Петя не может выиграть за один ход;
– Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
Найденные значения запишите в ответе в порядке возрастания.
Задание 21
Найдите минимальное значение S, при котором одновременно выполняются два условия:
– у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;
– у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.  


На каждый вопрос вводите ответ в отдельной строке. Если ответ на вопрос содержит несколько значений, то разделяйте их одним пробелом.
Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может: 
– добавить в кучу 2 камня;
– добавить в кучу 5 камней;
– увеличить количество камней в куче в 2 раза.
Например, из кучи в 20 камней за один ход можно получить кучу из 22, 25 или 40 камней. Чтобы делать ходы, у каждого игрока есть неограниченное количество камней. Игра завершается, когда количество камней в куче становится не менее 128. Победителем считается игрок, сделавший последний ход, то есть первым получивший кучу из 128 или более камней. В начальной момент в куче было S камней, 1 < S < 127.
Задание 19. 
Укажите минимальное значение S, при котором Петя не может выиграть за один ход, но при любом ходе Пети Ваня может выиграть своим первым ходом.
Задание 20.
Найдите два наименьших значения S, когда Петя имеет выигрышную стратегию, причём одновременно выполняются два условия:
– Петя не может выиграть за один ход;
– Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
Найденные значения запишите в ответе в порядке возрастания.
Задание 21
Найдите минимальное значение S, при котором одновременно выполняются два условия:
– у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;
– у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.  


На каждый вопрос вводите ответ в отдельной строке. Если ответ на вопрос содержит несколько значений, то разделяйте их одним пробелом.
Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в кучу один или четыре камня либо увеличить количество камней в куче в три раза. У каждого игрока есть неограниченное количество камней, чтобы делать ходы. Игра завершается в тот момент, когда количество камней в куче становится не менее 67. Победителем считается игрок, сделавший последний ход, т.е. первым получивший кучу, состоящую из 67 или более камней. В начальный момент в куче было S камней; 1 ≤ S ≤ 66. Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника.
Задание 19. 
Укажите минимальное значение S, при котором Петя не может выиграть за один ход, но при любом ходе Пети Ваня может выиграть своим первым ходом.
Задание 20.
Найдите два наименьших значения S, когда Петя имеет выигрышную стратегию, причём одновременно выполняются два условия:
– Петя не может выиграть за один ход;
– Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
Найденные значения запишите в ответе в порядке возрастания.
Задание 21
Найдите минимальное значение S, при котором одновременно выполняются два условия:
– у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;
– у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.  


На каждый вопрос вводите ответ в отдельной строке. Если ответ на вопрос содержит несколько значений, то разделяйте их одним пробелом.
 
Ты тренер покемонов и хочешь предсказать общую силу покемона (Total stats) на основе его характеристик! Построй модель линейной регрессии, чтобы определить, какие параметры делают покемона самым сильным.

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

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

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

  • Defense — защита

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

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

  • Speed — скорость

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

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

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

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

Какая характеристика важнее всего для силы покемона? Напиши программу, которая автоматизирует нахождение ответа.

Формат выходных данных
Выведите значение коэффициента самой значимой характеристики,  с точностью два знака после запятой.
 
Вы работаете с классическим датасетом Boston Housing Dataset, который содержит информацию о ценах на недвижимость в пригородах Бостона. Датасет включает 13 признаков, влияющих на медианную стоимость домов. Ваша задача — построить модель множественной линейной регрессии и проанализировать факторы, влияющие на цену.

Описание признаков:  

Признак Описание Единицы
crim Уровень преступности на душу населения %
zn Доля жилых зон для участков > 25,000 кв. футов %
indus Доля промышленных площадей %
chas Расположение у реки (1 = да, 0 = нет) бинарный
nox Концентрация оксида азота (загрязнение воздуха) ppm
rm Среднее количество комнат в доме количество
age Доля домов, построенных до 1940 года %
dis Средневзвешенное расстояние до центров занятости единицы
rad Индекс доступности радиальных магистралей индекс
tax Ставка налога на имущество $ за $10,000
ptratio Соотношение учеников к учителям число
lstat % населения с низким статусом %
medv Медианная стоимость дома (целевая переменная) $1000

Задание

  1. Загрузите датасет из прикрепленного файла
  2. Выберите 5 наиболее важных признаков для модели:
    • rm (количество комнат)
    • lstat (% населения с низким статусом)
    • ptratio (соотношение учеников к учителям)
    • dis (расстояние до центров занятости)
    • crim (уровень преступности)
  3. Создайте X (признаки) и y (целевая переменная medv)
  4. Создайте и обучите модель LinearRegression
  5. Сделайте поиск ближайшего дома для следующих характеристик:
    • rm = 6.5 (количество комнат)
    • lstat = 10.0 (% населения с низким статусом)
    • ptratio = 18.0 (соотношение учеников к учителям)
    • dis = 4.0 (расстояние до центров занятости)
    • crim = 0.5 (уровень преступности)
Формат ответа:
Выведите целую часть цены дома из датасета, который наиболее близок к предсказанному.

Примечание
1)  Для разделения данных на обучающую и тестовую выборки используйте следующие параметры: test_size=0.2, random_state=42
Запросите с клавиатуры 2 натуральных числа a и b (числа не больше 100). 
Каждое число вводится в отдельной строке.

Выведите все числа от a до b включительно. Если число кратно четырём, выведите через пробел после него слово "Такт!". В конце выведите "Привет!"
Вы работаете с классическим датасетом Boston Housing Dataset, который содержит информацию о ценах на недвижимость в пригородах Бостона. Датасет включает 13 признаков, влияющих на медианную стоимость домов. Ваша задача — построить модель множественной линейной регрессии и проанализировать факторы, влияющие на цену.

Описание признаков:  

Признак Описание Единицы
crim Уровень преступности на душу населения %
zn Доля жилых зон для участков > 25,000 кв. футов %
indus Доля промышленных площадей %
chas Расположение у реки (1 = да, 0 = нет) бинарный
nox Концентрация оксида азота (загрязнение воздуха) ppm
rm Среднее количество комнат в доме количество
age Доля домов, построенных до 1940 года %
dis Средневзвешенное расстояние до центров занятости единицы
rad Индекс доступности радиальных магистралей индекс
tax Ставка налога на имущество $ за $10,000
ptratio Соотношение учеников к учителям число
lstat % населения с низким статусом %
medv Медианная стоимость дома (целевая переменная) $1000

Задание

  1. Загрузите датасет из прикрепленного файла
  2. Выберите 5 наиболее важных признаков для модели:
    • rm (количество комнат)
    • lstat (% населения с низким статусом)
    • ptratio (соотношение учеников к учителям)
    • dis (расстояние до центров занятости)
    • crim (уровень преступности)
  3. Создайте X (признаки) и y (целевая переменная medv)
  4. Создайте и обучите модель LinearRegression
  5. Считайте из консоли количество домов для предсказания, затем для каждого дома поочередно считайте 5 характеристик:
    • rm (количество комнат)

    • lstat (% населения с низким статусом)

    • ptratio (соотношение учеников к учителям)

    • dis (расстояние до центров занятости)

    • crim (уровень преступности)

  6. Сделайте предсказание цен для всех введенных домов

  7. Формат ответа:
    Для каждого дома выведите целую часть предсказанной цены на отдельной строке

Формат входных данных
Первая строка входных данных содержит целое число n - количество домов для предсказания. Затем n раз по 5 чисел с характеристиками каждого дома.

Формат выходных данных
Для каждого дома выведите целую часть предсказанной цены на отдельной строке.

Примечание
1)  Для разделения данных на обучающую и тестовую выборки используйте следующие параметры: test_size=0.2, random_state=42
Вы работаете с классическим датасетом Boston Housing Dataset, который содержит информацию о ценах на недвижимость в пригородах Бостона. Датасет включает 13 признаков, влияющих на медианную стоимость домов.

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

Описание признаков:  

Признак Описание Единицы
crim Уровень преступности на душу населения %
zn Доля жилых зон для участков > 25,000 кв. футов %
indus Доля промышленных площадей %
chas Расположение у реки (1 = да, 0 = нет) бинарный
nox Концентрация оксида азота (загрязнение воздуха) ppm
rm Среднее количество комнат в доме количество
age Доля домов, построенных до 1940 года %
dis Средневзвешенное расстояние до центров занятости единицы
rad Индекс доступности радиальных магистралей индекс
tax Ставка налога на имущество $ за $10,000
ptratio Соотношение учеников к учителям число
lstat % населения с низким статусом %
medv Медианная стоимость дома (целевая переменная) $1000

Задание

  1. Загрузите датасет из прикрепленного файла
  2. Выберите 5 наиболее важных признаков для модели:
    • rm (количество комнат)
    • lstat (% населения с низким статусом)
    • ptratio (соотношение учеников к учителям)
    • dis (расстояние до центров занятости)
    • crim (уровень преступности)
  3. Создайте X (признаки) и y (целевая переменная medv)
  4. Создайте и обучите модель LinearRegression
  5. Сделайте предсказание для дома со следующими характеристиками:
    • rm = 6.5 (количество комнат)
    • lstat = 10.0 (% населения с низким статусом)
    • ptratio = 18.0 (соотношение учеников к учителям)
    • dis = 4.0 (расстояние до центров занятости)
    • crim = 0.5 (уровень преступности)
Формат ответа
Выведите значение предсказанной цены (в долларах), округлив до целого.

Примечание
1)  Для разделения данных на обучающую и тестовую выборки используйте следующие параметры: test_size=0.2, random_state=42
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат, хвост опущен. При опущенном хвосте Черепаха оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения.
У исполнителя существует команды: Вперёд n и Назад n (где n – целое число), вызывающие передвижение Черепахи на n единиц в соответствующем направлении,  Направо m и Налево m (где m – целое число), вызывающие изменение направления движения на m градусов по часовой  или против часовой стрелки соответственно.

Запись
Повтори k [Команда1 Команда2 … КомандаS]
означает, что последовательность из S команд повторится k раз. Черепахе был дан для исполнения следующий алгоритм:
Направо 90 Повтори 7 [Направо 45 Вперёд 11 Направо 45]
Определите, сколько точек с целочисленными координатами будут находиться внутри области, которая ограничена линией, заданной алгоритмом. Точки на линии учитывать не следует.
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат, хвост опущен. При опущенном хвосте Черепаха оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения.
У исполнителя существует команды: Вперёд n и Назад n (где n – целое число), вызывающие передвижение Черепахи на n единиц в соответствующем направлении,  Направо m и Налево m (где m – целое число), вызывающие изменение направления движения на m градусов по часовой  или против часовой стрелки соответственно.

Запись
Повтори k [Команда1 Команда2 … КомандаS]
означает, что последовательность из S команд повторится k раз. Черепахе был дан для исполнения следующий алгоритм:
Повтори 2 [Вперёд 28 Направо 90 Вперёд 18 Направо 90]
Поднять хвост
Вперёд 14 Направо 90 Вперёд 10 Налево 90
Опустить хвост
Повтори 2 [Вперёд 30 Направо 90 Вперёд 7 Направо 90]

Определите, сколько точек с целочисленными координатами будут находиться внутри объединения фигур, ограниченного заданными алгоритмом линиями, включая точки на линиях.
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат, хвост опущен. При опущенном хвосте Черепаха оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения.
У исполнителя существует команды: Вперёд n и Назад n (где n – целое число), вызывающие передвижение Черепахи на n единиц в соответствующем направлении,  Направо m и Налево m (где m – целое число), вызывающие изменение направления движения на m градусов по часовой  или против часовой стрелки соответственно.

Запись
Повтори k [Команда1 Команда2 … КомандаS]
означает, что последовательность из S команд повторится k раз. Черепахе был дан для исполнения следующий алгоритм:
Повтори 8 [Вперёд 16 Направо 90 Вперёд 22 Направо 90]
Поднять хвост
Вперёд 5 Направо 90 Вперёд 5 Налево 90
Опустить хвост
Повтори 8 [Вперёд 52 Направо 90 Вперёд 77 Направо 90]

Определите площадь области пересечения фигур, ограниченных заданными алгоритмом линиями. В ответе укажите только число. Единицу измерения указывать не нужно.
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат, хвост опущен. При опущенном хвосте Черепаха оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения.
У исполнителя существует команды: Вперёд n и Назад n (где n – целое число), вызывающие передвижение Черепахи на n единиц в соответствующем направлении,  Направо m и Налево m (где m – целое число), вызывающие изменение направления движения на m градусов по часовой  или против часовой стрелки соответственно.

Запись
Повтори k [Команда1 Команда2 … КомандаS]
означает, что последовательность из S команд повторится k раз. Черепахе был дан для исполнения следующий алгоритм:
Повтори 2 [Вперед 6 Направо 90 Вперед 12 Направо 90]
Поднять хвост
Вперед 1 Направо 90 Вперед 3 Налево 90
Опустить хвост
Повтори 2 [Вперед 77 Направо 90 Вперед 45 Направо 90]

Определите периметр области пересечения фигур, ограниченных заданными алгоритмом линиями.
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат, хвост опущен. При опущенном хвосте Черепаха оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения.
У исполнителя существует команды: Вперёд n и Назад n (где n – целое число), вызывающие передвижение Черепахи на n единиц в соответствующем направлении,  Направо m и Налево m (где m – целое число), вызывающие изменение направления движения на m градусов по часовой  или против часовой стрелки соответственно.

Запись
Повтори k [Команда1 Команда2 … КомандаS]
означает, что последовательность из S команд повторится k раз. Черепахе был дан для исполнения следующий алгоритм:
Повтори 10 [Вперёд 22 Направо 90 Вперед 16 Направо 90] 
Поднять хвост
Вперед 1 Направо 90 Вперёд 1 Налево 90
Опустить хвост
Повтори 10 [Вперёд 72 Направо 90 Вперёд 79 Направо 90]

Определите периметр области пересечения фигур, ограниченных заданными алгоритмом линиями.
Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат, хвост опущен. При опущенном хвосте Черепаха оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения.
У исполнителя существует команды: Вперёд n и Назад n (где n – целое число), вызывающие передвижение Черепахи на n единиц в соответствующем направлении,  Направо m и Налево m (где m – целое число), вызывающие изменение направления движения на m градусов по часовой  или против часовой стрелки соответственно.

Запись
Повтори k [Команда1 Команда2 … КомандаS]
означает, что последовательность из S команд повторится k раз. Черепахе был дан для исполнения следующий алгоритм:

Повтори 4 [Вперёд 28 Направо 90 Вперёд 26 Направо 90]
Поднять хвост
Вперёд 8 Направо 90 Вперёд 7 Налево 90
Опустить хвост
Повтори 4 [Вперёд 67 Направо 90 Вперёд 98 Направо 90]


Определите площадь пересечения фигур, ограниченных заданными алгоритмом линиями.
дн09-02#67847
Откройте файл электронной таблицы, содержащей в каждой строке семь натуральных чисел. Определите наименьшее число в строке с наибольшим номером, для которой выполнены оба условия:
– в строке есть одно число, которое повторяется трижды, остальные четыре числа различны;
– сумма двух наибольших чисел строки среди неповторяющихся чисел не меньше удвоенного повторяющегося числа.
дн09-01#67844
Откройте файл электронной таблицы, содержащей в каждой строке семь натуральных чисел. Определите сумму максимального числа и минимального числа в строке с наибольшим номером, для которой выполнены оба условия:
– в строке есть одно число, которое повторяется трижды, остальные четыре числа различны;
– среднее арифметическое неповторяющихся чисел строки не больше повторяющегося числа.
В ответе запишите только число.

Файл к заданию
На бесконечной в обе стороны клетчатой полоске в клетке с нулевой координатой стоит робот.

Робот делает 1 шаг вправо, затем 2 шага влево, 3 шага вправо, 4 шага влево и так далее. Сделав суммарно N шагов, робот останавливается. Определите координату клетки, в которой окажется робот после остановки.
Формат входных данных
В единственной строке задано целое число N (0 ≤ N ≤ 1018). Обратите внимание, что значения переменных в этой задаче могут превышать возможные значения 32-битной целочисленной переменной, поэтому необходимо использовать 64-битные целочисленные типы данных (тип int64 в языке Pascal, тип long long в C++, тип long в Java и C#).
Формат выходных данных
Выведите единственное число координату клетки, в которой окажется робот после остановки.
Родители Андрея решили поклеить на одну из стен в его комнате новые обои. Высота стены n сантиметров, а ширина m сантиметров. К сожалению, обои, выбранные родителями, Андрею не понравились, и он решил их чем-нибудь закрыть. Так как он участвовал в большом количестве олимпиад, у него накопилось много дипломов. Все дипломы у Андрея одинаковые это прямоугольники высотой a сантиметров и шириной b сантиметров. Помогите Андрею узнать, сколько квадратных сантиметров обоев он сможет завесить дипломами, если не будет их разрезать и переворачивать. Все дипломы должны целиком размещаться внутри стены и не накладываться друг на друга.
Формат входных данных
В первой строке входных данных находится целое число n (1 n ≤ 2 ·109) высота стены.
Во второй строке находится целое число m (1 ≤ m ≤ 2 · 109) ширина стены.
В третьей строке находится целое число a (1 ≤ a ≤ 2 ·109) высота диплома.
В четвёртой строке находится целое число b (1 ≤ b ≤ 2 · 109) ширина диплома.
Формат выходных данных
Выведите одно целое число площадь части стены, которая будет закрыта дипломами, если их не поворачивать, не обрезать и не накладывать друг на друга.
Обратите внимание, что значение ответа в этой задаче может превышать возможное значение 32-битной целочисленной переменной, поэтому необходимо использовать 64битные целочисленные типы данных (тип int64 в языке Pascal, тип long long в С и С++, тип long в Java и С#).

Замечание

В примере из условия можно разместить 6 дипломов, суммарная площадь которых равна 12 квадратным сантиметрам. Большее число дипломов разместить нельзя, они будут вылезать за границы стены.

 

re.finditer(pattern, string) - находит все совпадения, возвращает итератор.

  • Возвращает: итератор объектов Match
  • Использование: for match in re.finditer(r'\d+', text):


match.groups(default=None) - возвращает все захваченные группы в виде кортежа

Особенности:

  • Возвращает ВСЕ группы из шаблона

  • Группы нумеруются с 1 (group(1)group(2))

  • Если группа не найдена, возвращает default (по умолчанию None)

match.group(0) - найденная строка


Найти все теги товаров и вывести их вместе с названиями товаров.

Формат вывода
Товар: iPhone_14
Теги: Premium, New
Полное совпадение: Name: iPhone_14, Price: 999.99$, Category: Electronics, Tags: [Premium, New]
Поделиться
Класснуть