Тема Практика Программирования

03 Простейшие программы

Вспоминай формулы по каждой теме
Решай новые задачи каждый день
Вдумчиво разбирай решения
ШКОЛКОВО.
Готовиться с нами - ЛЕГКО!
Подтемы раздела практика программирования
Решаем задачи

Ошибка.
Попробуйте повторить позже

Задача 41#42948

Ёжик хочет получить в свою коллекцию из N  фантиков самый редкий из всех фантиков, но конфета с этим фантиком стоит 10005000  кг морковок. Ёжик понял, что другого варианта зарабатывать морковки, кроме как стать программистом у него нет, поэтому пришел к Крошу обучаться. Крош дал Ёжику задание написать программу, которая найдет фантик с минимальной четной стоимостью в его коллекции. Помогите Ёжику решить поставленную задачу для N = 7  и цен 100 54 23 32 12 8 3

Формат входных данных:

N  — натуральное число количество фантиков в коллекции Ёжика.

Затем N  чисел через пробел — стоимость фантиков в коллекции Ёжика.

Формат выходных данных:

Одно число — минимальная четная стоимость фантика.
Примечание: чтобы считать числа в одной строчке и поместить их в массив используйте конструкцию:

    arr = list(map(int, input().split()))

Показать ответ и решение
  n = int(input())
  arr = list(map(int, input().split()))
  minim = 10005000
  for i in range(n):
      if arr[i] < minim and arr[i] % 2 == 0:
          minim = arr[i]
  print(minim)

Ответ: 8

Ошибка.
Попробуйте повторить позже

Задача 42#42949

Лосяш начал проходить новую компьютерную игру, в которой N  уровней. Он хочет очень быстро ее пройти, поэтому будет каждый день проходить половину от всех уровней, которые еще не прошел (как минимум 1  уровень в день). Если количество уровней будет нечетным и не равным 1  он будет проходить на 1  уровень меньше чем останется. Найдите количество дней, за которое Лосяш пройдет игру, если N = 123124125  .

Формат входных данных:

N  — натуральное число, количество уровней.

Формат выходных данных:

Количество дней, за которое Лосяш пройдет игру.

Показать ответ и решение
  n = int(input())
  count = 0
  while n > 1:
      count += 1
      n = (n + 1) // 2
  print(count + 1)

Ответ: 28

Ошибка.
Попробуйте повторить позже

Задача 43#42950

Нюша начала думать о своей богатой жизни и решила, что каждая уважающая себя свинка должна покупать новый наряд не реже чем раз в неделю. Но Нюша себя не только уважает, но и безгранично любит, поэтому решила, что каждое четное воскресенье года будет покупать себе по 2  наряда, а каждое нечетное по 3  .

Найдите количество нарядов, которые Нюша купит за год, если в году 365  дней, первое января это воскресенье и нумерация недель начинается с 1  .

Показать ответ и решение
  ans = 0
  counter = 0
  i = 1
  while i <= 365:
      counter += 1
      if counter % 2 == 0:
          ans += 2
      else:
          ans += 3
      i += 7
  print(ans)

Ответ: 133

Ошибка.
Попробуйте повторить позже

Задача 44#42951

Пин ведет учет счастливых дней в своей жизни со дня, когда Биби улетел в космос. Каждый день, когда он получает весточку от Биби, считается счастливым. Так как Биби улетает все дальше от нашей планеты, счастливые дни в жизни Пина случаются все реже. Будем считать, что день, когда пришла первая весточка имеет номер a1 = 1  . Каждый следующий счастливый день имеет формулу ai = ai−1 +i  . Найдите количество счастливых дней за первые 3  года (не високосные) с момента, как Биби улетел. В задаче запрещено использовать массивы.

Показать ответ и решение
  a = 0
  i = 1
  count = 0
  while a < 3 * 365:
      a = a + i
      i += 1
      count += 1
  print(count - 1)

Отнимаем единицу из ответа, т.к. после последней весточки, входящей в первые 3  года, цикл сработает еще раз (последний возможный день весточки все еще входит в 3  года, т.е. он меньше 3 ⋅365  ), а вот следующая весточка уже выйдет за 3  года.

Ответ: 46

Ошибка.
Попробуйте повторить позже

Задача 45#42952

Копатыч решил покрасить ульи в разные цвета, чтобы пчелкам было веселее жить. Каждому цвету Копатыч дал свой номер, чем цвет светлее, тем его номер меньше, чем цвет темнее, тем его номер больше. Копатыч хочет расставить все ульи в порядке от более светлого к более темному. Он решил начать с простого, он хочет рассмотреть каждую пару рядом стоящих ульев и, если номер левого улья больше, чем номер правого, поменять их местами. Напишите программу, которая выполнит желание Копатыча для следующих 7  номеров ульев: 12 43 8 4 0 100 99  . В ответе напишите новый порядок чисел.

Формат входных данных:

В первой строке входных данных подается число N  — количество цветов, которые Копатыч хочет расставить.

Во второй строке N  чисел разделенных пробелом — номера ульев.

Формат выходных данных:

N  чисел разделенных пробелом — новый порядок ульев.

Пример ввода:

N = 4

4 8 3 1

Пример вывода:

4 3 1 8

Показать ответ и решение
  n = int(input())
  arr = list(map(int, input().split()))
  for i in range(n - 1):
      if arr[i + 1] < arr[i]:
          arr[i + 1], arr[i] = arr[i], arr[i + 1]
  print(*arr)

Ответ: 12 8 4 0 43 99 100

Ошибка.
Попробуйте повторить позже

Задача 46#42953

Копатыч продолжает сортировать цвета ульев, он уже знает как один раз поменять попарно N  ульев. Теперь он хочет применить алгоритм ровно N  раз. Напишите программу, которая выполнит желание Копатыча для следующих номеров ульев: 12 43 8 4 0 100 99  . В ответе напишите новый порядок чисел.

Формат входных данных:

В первой строке входных данных подается число N  — количество цветов, которые Копатыч хочет расставить.

Во второй строке N  чисел разделенных пробелом — номера ульев.

Формат выходных данных:

N  чисел разделенных пробелом — новый порядок ульев.

Пример ввода:

N = 4

4 8 3 1

Пример вывода:

1 3 4 8

Показать ответ и решение
  n = int(input())
  arr = list(map(int, input().split()))
  for j in range(n):
      for i in range(n - 1 - j):
          if arr[i + 1] < arr[i]:
              arr[i + 1], arr[i] = arr[i], arr[i + 1]
  print(*arr)

Ответ: 0 4 8 12 43 99 100

Ошибка.
Попробуйте повторить позже

Задача 47#42954

Нюша выбирает себе новый бантик. Она пришла в магазин «все для модных свинок», где ей предложили взять к бантику еще и туфли. Нюша решила взять набор из бантика и пары туфель с максимальной ценой (может себе позволить). Помогите Нюше написать программу, которая находит стоимость такого набора, если цены бантиков: [12,34,54,23,89,12,5]  , а цены туфель: [43,198,241,216,990]  .

Показать ответ и решение
  bows = [12, 34, 54, 23, 89, 12, 5]
  shoes = [43, 198, 241, 216, 990]
  max_1 = -1
  max_2 = -1
  for i in bows:
      max_1 = max(max_1, i)
  for i in shoes:
      max_2 = max(max_2, i)
  print(max_1 + max_2)

Ответ: 1079

Ошибка.
Попробуйте повторить позже

Задача 48#42955

Совунья хочет сделать перестановку на полке с баночками. Она хочет поменять местами первую баночку с последней, вторую баночку с предпоследней и так далее. Напишите программу, которая поможет Совунье поставить все баночки задом наперед, если каждая баночка имеет свою бирочку с номером. На полке сейчас следующий порядок номеров 21 17 29 26 23 22  . В ответе напишите новый порядок номерков через пробел. Запрещено использовать методы, которые могут облегчить Вам жизнь.

Показать ответ и решение
  arr = [21, 17, 29, 26, 23, 22]
  n = len(arr)
  for i in range(n // 2):
      arr[i], arr[n - i - 1] = arr[n - i - 1], arr[i]
  print(*arr)

Ответ: 22 23 26 29 17 21

Ошибка.
Попробуйте повторить позже

Задача 49#42956

Кар-Карыч решил привести себя в форму. У него есть следующий набор блинов весом [5,3,10,23,12,14,6,9,18,43  ] килограммов. Кар-Карыч решил, что каждый день будет находить блин с минимальным весом, кратным трем, из оставшихся и съедать его (форма шара тоже форма). Помогите Кар-Карычу написать программу, чтобы узнать сколько килограмм блинов Кар-Карыч съест за 5  дней.

Показать ответ и решение
  arr = [5, 3, 10, 23, 12, 14, 6, 9, 18, 43]
  sum = 0
  for i in range(5):
      minim = 100000000000000
      ind_minim = 0
      for j in range(len(arr)):
          if arr[j] < minim  and arr[j] % 3 == 0:
              ind_minim = j
              minim = arr[j]
      sum += minim
      arr.pop(ind_minim)
  print(sum)

Ответ: 48

Ошибка.
Попробуйте повторить позже

Задача 50#42957

Бараш собирал цветы для Нюши. Он дал каждому цветку номер и получил следующий набор цветов [1,2,3,4,5,6  ]. Бараш хочет выбрать 3  различных цветка для букетика. Напишите программу чтобы узнать количество различных букетов, которые может составить Бараш.

Показать ответ и решение
  arr = [1, 2, 3, 4, 5, 6]
  count = 0
  for i in range(len(arr)):
      for j in range(i + 1, len(arr)):
          for k in range(j + 1, len(arr)):
              count += 1
  print(count)

Ответ: 20

Ошибка.
Попробуйте повторить позже

Задача 51#42958

Лосяш проводит научный эксперимент. Он сделал много бутербродов из колбасы и разбросал их по тропинке, длина тропинки равна N  км. Лосяш хочет выяснить сколько бутербродов из колбасы необходимо чтобы пробежать всю тропинку. Изначальный запас энергии Лосяша максимальный и его хватит на 20  км. Каждый съеденный бутерброд восстанавливает энергию до максимума. Если энергия великого экспериментатора закончится, он больше не сможет бегать. Напишите программу, которая находит минимальное количество бутербродов, которое съест Лосяш, если N = 119  км и бутерброды расположены на расстояниях [20,25,44,47,53,67,69,75,  83,99  ] км от старта.

Показать ответ и решение
  arr = [20, 25, 44, 47, 53, 67, 69, 75, 83, 99]
  s = 20 # расстояние до которого точно хватит запаса сил
  i = 0
  count = 0
  while s < 119:
      while i < len(arr) and arr[i] <= s:
          i += 1
      s = arr[i - 1] + 20
      count += 1
  print(count)

Ответ: 7

Ошибка.
Попробуйте повторить позже

Задача 52#44415

Уильям любит ездить на велосипеде. Поскольку Уильям знает, что важно не забывать о гидратации, он выпивает  0.5  литра воды за час езды на велосипеде. Напишите программу, которая по заданному времени в часах находит количество литров, которое выпьет Уильям, округлив его в меньшую сторону. В ответ укажите результат работы программы для числа 11.8  .

Формат входных данных:

Вещественное число, время в часах.

Формат выходных данных:

Натуральное число, количество литров воды, которое выпьет Уильям.

Пример:

6.7 ⇒ 3

Показать ответ и решение
n = float(input())
print(int(n // 2)) # или n * 0.5

Ответ: 5

Ошибка.
Попробуйте повторить позже

Задача 53#44416

Первый век охватывает период с 1  года до 100  года включительно, второй век — со 101  года до 200  года включительно и т.д. Напишите программу, которая по заданному году будет определять век, в котором он находится. В ответ укажите результат работы программы для числа 2077  .

Формат входных данных:

Натуральное число, год.

Формат выходных данных:

Натуральное число, век, в котором находится указанный год.

Пример:

1961 ⇒ 20

Показать ответ и решение
  # Решение 1
  n = int(input())
  if n % 100 == 0:
      print(n // 100)
  else:
      print((n // 100) + 1)

  # Решение 2
  n = int(input())
  print((n + 99) // 100)

  # Решение 3
  print((int(input()) + 99) // 100)

Ответ: 21

Ошибка.
Попробуйте повторить позже

Задача 54#44417

Таракан — одно из самых быстрых насекомых. Напишите программу, которая принимает его скорость в км/ч и возвращает её в см/сек, округленную до целого числа. В ответ укажите результат работы программы для числа 1.08  .

Формат входных данных:

Вещественное число, скорость таракана в км/ч.

Формат выходных данных:

Натуральное число — скорость таракана в см/сек.

Пример:

0.74 ⇒ 20

Показать ответ и решение
  # Решение 1
  n = float(input())
  cm_per_km = 100000
  sec_per_hour = 3600
  print(int(n * cm_per_km / sec_per_hour))

  # Решение 2
  n = float(input())
  print(int(n // 0.036))

Ответ: 30

Ошибка.
Попробуйте повторить позже

Задача 55#44418

Американцы — странные люди: в их зданиях 1  -й этаж на самом деле является нулевым, а 13  -го этажа нет (из-за суеверия). При замене 1  -го этажа на нулевой и удалении 13  -го этажа числа перемещаются вниз, чтобы занять их место. В случае этажей выше 13  -го, они сдвигаются вниз на два, потому что под ними находятся два опущенных числа. Напишите программу, которая, зная этаж в американской системе, возвращает этаж в европейской системе. В ответ укажите результат работы программы для числа 15  .

Формат входных данных:

Натуральное число, номер этажа в американской системе.

Формат выходных данных:

Натуральное число, номер этажа в европейской системе.

Пример:

1 ⇒ 0

5 ⇒ 4

20 ⇒ 18

Показать ответ и решение
  n = int(input())
  if n <= 0:
      print(n)
  if n < 13:
      print(n - 1)
  if n > 13:
      print(n - 2)

Ответ: 13

Ошибка.
Попробуйте повторить позже

Задача 56#44419

Юджин и Рапунцель думают, что они влюблены, но там, где они живут, они узнают об этом, только когда сорвут по цветку. Если у одного из цветков четное количество лепестков, а у другого — нечетное, это означает, что они влюблены.

Напишите программу, которая будет брать количество лепестков каждого цветка и возвращать True, если они влюблены, и False, если нет. В ответ укажите результат работы программы для чисел 12  и 5  .

Формат входных данных:

Два натуральных числа, каждое число с новой строки:

a  — натуральное число, количество лепестков у цветка Юджин;

b  — натуральное число, количество лепестков у цветка Рапунцель.

Формат выходных данных:

True — если Юджин и Рапунцель влюблены.

False — если Юджин и Рапунцель не влюблены.

Показать ответ и решение
  # Решение 1
  a = int(input())
  b = int(input())
  if (a % 2 == 0 and b % 2 != 0) or (b % 2 == 0 and a % 2 != 0):
      print("True")
  else:
      print("False")

  # Решение 2
  a = int(input())
  b = int(input())
  if (a % 2) + (b % 2) == 1:
      print("True")
  else:
      print("False")

Ответ: True

Ошибка.
Попробуйте повторить позже

Задача 57#44420

Напишите программу, которая по заданному росту и весу вычисляет индекс массы тела          вес
И МТ =  рост2-  . В ответ укажите результат работы программы для веса 66  кг и роста 171  см.

Формат входных данных:

Два натуральных числа, каждое число с новой строки:

m  — вещественное число, масса тела в килограммах;

h  — вещественное число, рост в метрах.

Формат выходных данных:

если ИМ Т ≤ 18.5,верните «Н едостаточны й вес»

если ИМ Т ≤ 25.0,верните « Нормальны й вес»

если ИМ Т ≤ 30.0,верните «Избыточны й вес»

если И МТ > 30,верните « Ож ирение»

Пример:

m = 65,h = 1.85 ⇒ Нормальный вес

m = 97.3,h = 1.73 ⇒ Ожирение

Показать ответ и решение
  m = float(input())
  h = float(input())
  bmi = m / (h * h)
  if bmi <= 18.5:
      print("Недостаточный вес")
  elif bmi <= 25.0:
      print("Нормальный вес")
  elif bmi <= 30.0:
      print("Избыточный вес")
  else:
      print("Ожирение")

Ответ: Нормальный вес

Ошибка.
Попробуйте повторить позже

Задача 58#44421

ДНК, является основной молекулой хранения информации в биологических системах. Она состоит из четырех оснований нуклеиновой кислоты — гуанина G, цитозина C, аденина A и тимина T.

РНК, является основной молекулой-передатчиком в клетках. РНК несколько отличается от ДНК своей химической структурой и не содержит тимина. В РНК тимин заменен другой нуклеиновой кислотой — урацилом U.

Напишите программу, которая переводит заданную строку ДНК в РНК. В ответ укажите результат работы программы для строки «CAATGTCCA».

Формат входных данных:

Строка — представление ДНК.

Формат выходных данных:

Строка — представление РНК.

Пример:

«GCAT» ⇒ «GCAU»

«ATGC» ⇒ «AUGC»

Показать ответ и решение
  # Решение 1
  s = input()
  new_s = ""
  for i in range(len(s)):
      if s[i] == ’T’:
          new_s = new_s + ’U’
      else:
          new_s = new_s + s[i]
  print(new_s)

  # Решение 2
  s = input()
  # Функция replace() заменяет все буквы ’T’ на ’U’ в строке s
  print(s.replace(’T’, ’U’))

  # Решение 3
  print(input().replace(’T’, ’U’))

Ответ: CAAUGUCCA

Ошибка.
Попробуйте повторить позже

Задача 59#44422

В межгалактической школе только что прошел экзамен по крутизне, и Боб его успешно написал. Поздравим его! Боб амбициозный человек. Он хочет знать, лучше ли он, чем средний ученик в его классе. Напишите программу, которая рассчитывает среднее значение класса за экзамен по крутизне и сравнивает его с результатом Боба. В ответ укажите результат работы программы для числа 83  и массива [69,63,89,62,94,65,84,82,91  ].

Примечание: результат Боба не включен в массив результатов всего класса. Для вычисления среднего значения класса добавьте результат Боба в данный массив.

Формат входных данных:

В первой строке — натуральное число, результат Боба за экзамен по крутизне.

Во второй строке — массив с результатами за экзамен одноклассников Боба.

Формат выходных данных:

True — если результат Боба лучше чем среднее значение в классе.

False — если результат Боба хуже чем среднее значение в классе.

Показать ответ и решение
  # Решение 1
  bob = 83
  array = [69, 63, 89, 62, 94, 65, 84, 82, 91]
  array.append(bob)
  average = 0

  for i in range(len(array)):
      average += array[i]

  average /= len(array)

  if bob > average:
      print("True")
  else:
      print("False")

  # Решение 2
  bob = 83
  array = [69, 63, 89, 62, 94, 65, 84, 82, 91]
  array.append(bob)

  if bob > (sum(array) / len(array)):
      print("True")
  else:
      print("False")

Ответ: True

Ошибка.
Попробуйте повторить позже

Задача 60#45083

После того, как фиксики узнали, что дома у программистов только хорошее железо (чтобы заряжаться), они заставили ДимДимыча учиться программировать. Нолик дал ДимДимычу задачу: найти количество чисел, кратных 13  и не кратных 2  , на отрезке от 1  до n  (включительно), где n = 182  . ДимДимыч написал код, но допустил в нем ошибку, помогите ДимДимычу решить задачу, исправьте ошибку в одной единственной строчке, чтобы код работал правильно. В ответе напишите правильную строчку, соблюдая все правила синтаксиса.

count = 0
n = 182
for i in range(1, n):
    if i % 13 == 0 and i % 2 != 0:
        count += 1
print(count)

Показать ответ и решение

Так как цикл for не рассматривает последний элемент, необходимо добавить единицу к концу рассматриваемого отрезка.

Ответ: for i in range(1, n + 1):
Рулетка
Вы можете получить скидку в рулетке!