Проблемная 8 задача из ЕГЭ по информатике | Как решать 8 задачи со списком

preview_player
Показать описание
В этом видео я рассказываю, как решать 8 задачу со списком.
Много у кого из моих учеников появляются затруднения или ошибки именно в этой задачи.
Рассказываю на примере задачи из досрока ЕГЭ 2022, в ней много допустили ошибки
Рекомендации по теме
Комментарии
Автор

from itertools import *
n=0
for x in product('АПРСУ', repeat=5):
n+=1
s=''.join(x)
if s[0]=='У' and 'АА' not in s:
print(n)
break

Итертулсом намного проще решать подобные вариации этого задания

alier
Автор

Мне кажется слишом сложно, можно легче.
1) Перевести буквы в пятиричную СС(А - 0, П -1, Р - 2, С - 3, У - 4)
2) Определить что нужное нам слово - это "УАПАП"
3) Перевести число в десятиричную из пятиричной: print(int('40101', 5))
4) Добавить к ответу 1 (т.к. список начинается с единицы)

kmlmutn
Автор

K=0
From itertools import product
For x in product('АПРСУ', repeat=5):
S=''.join(x)
if s[0] in 'УВ' and s.count('АА')==0:
K+=1
Print(k)

#Объясняю код. Из библиотеки итертулс вызываем продукт. Продукт за нас перебирает буквы. Указываем в том порядке, как идут буквы. Затем повторяем пять раз репитом, вместо того, чтобы как дебич писать код как во втором задании. Продукт выводит буквы в виде кортежа, а нам нужен список. Поэтому
Пишем джоин икс. Прописываем условия. Если в составе первой буквы входят только буквы у в и если в слове сочетания букв аа равняется нулю, то прибавляем к счётчику +1. Печатаем к. И всё

wvosxhi
Автор

Что делает эта библиотека и sys.exit() ?

cfjfjvz
Автор

Ну вообще exit() можно использовать без импорта

gdneptyn
Автор

import itertools

data = sorted(map(lambda x: "".join(x), itertools.product("ПАРУС", repeat=5)))
for i in range(len(data)):
if data[i][0] == "У" and "АА" not in data[i]:
print(i + 1)
break

teiller
Автор

Кстати. Первое условие сразу же было написать в первом форе. Уберите оттуда все буквы кроме у в и вам не придёт писать иф

wvosxhi
Автор

Программа не запускается: пишет, что значение “c” не найдено

Dasha_Mint
Автор

зачем системную библиотеку использовать, если можно юзать exit()

TadyX
Автор

чето люто O(N^5) взял, есть много решений бытрее и легче

blagowhite
Автор

Скажите кто-нибудь знать какой программирования языка?

it-
Автор

С count == 0 интересно придумано, а все остальное лучше сделать библиотекой itertools

pv