Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
-1 / 0 / 0
Регистрация: 30.12.2022
Сообщений: 20

Задача ЕГЭ номер 8

17.05.2024, 18:26. Показов 3764. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Скажите, пожалуйста, где у меня ошибка в коде?

Задача:
Светлана составляет коды из букв слова ПАРАБОЛА. Код должен состоять из 8 букв, и каждая буква в нём должна встречаться столько же раз, сколько в заданном слове. Кроме того, в коде не должны стоять рядом две гласные и две согласные буквы. Сколько кодов может составить Светлана?

Моё решение:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
a = "парабола"
c = 0
for l1 in a:
  for l2 in a:
    for l3 in a:
      for l4 in a:
        for l5 in a:
          for l6 in a:
            for l7 in a:
              for l8 in a:
                w = l1 + l2 + l3 + l4 + l5 + l6 + l7 + l8
                for i in range(9):
                  if w.count("п") == 1 and w.count("а") == 3 \
and w.count("р") == 1 and w.count("б") == 1 and \
w.count("о") == 1 and w.count("л") == 1 and ((w[i] == "а" or w[i] == "о") \
and (w[i+1] != "а" or w[i+1] != "о") or (w[i] in ["п", "р", "б", "л"] \
and w[i+1] not in ["п", "р", "б", "л"])):                    
                  c += 1 
print(c)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.05.2024, 18:26
Ответы с готовыми решениями:

Задача из ЕГЭ по информатике номер 8
Подскажите пожалуйста, как решить задачу по информатике: "Все десятибуквенные коды, составленные из букв, входящих в слово ТЕРМИН,...

Задачка из ЕГЭ(24 номер)
Текстовый файл содержит только заглавные буквы латинского алфавита (ABC…Z). Определите количество групп из идущих подряд не менее 10...

Решить задания из ЕГЭ номер 15
Здравствуйте, помогите, пожалуйста, написать программу на языке Python для заданий 15 из ЕГЭ по информатике. Номер 229 и 406 Требуется...

8
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
17.05.2024, 19:19
Зачем писать сложную программу, когда задача решается почти в уме?
Если согласные и гласные чередуются, то возможны 2 варианта расстановки гласных и согласных:
СГСГСГСГ и ГСГСГСГС Варианты идентичны ( кроме четности мест
Буква О в и первом, и во втором варианте может стоять на 4 местах, на остальных стоит буква А, значит имеем:
2*4*4*3*2*1=192
1
-1 / 0 / 0
Регистрация: 30.12.2022
Сообщений: 20
17.05.2024, 19:22  [ТС]
Я хотел решить эту задачу с помощью Python. Математическими методами я не пробывал пробовал ни разу. Если можно, напишите код. А так спасибо за способ.
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,707
Записей в блоге: 14
18.05.2024, 11:33
кот Бегемот, у меня больше получилось...

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
from itertools import permutations
 
def check(w):
    s=set(('п','р','б','л'))
    g=set(('о','а'))
    s1=set(w[0::2])
    s2=set(w[1::2])
    return (s1==s and s2==g) or (s1==g and s2==s) 
 
s="парабола"
perms=list(permutations(list(s)))
 
c=0
for x in perms:
    if check(x):
        c=c+1
        #print("".join(x))
print(c)
1152
0
55 / 39 / 23
Регистрация: 07.05.2024
Сообщений: 58
18.05.2024, 13:27
Catstail,
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
from itertools import permutations
 
def check(w):
    s=set(('п','р','б','л'))
    g=set(('о','а'))
    s1=set(w[0::2])
    s2=set(w[1::2])
    return (s1==s and s2==g) or (s1==g and s2==s) 
 
s="парабола"
perms=list(permutations(list(s)))
 
c=set()
for x in perms:
    if check(x):
        c.add(x)
print(len(c))
2
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
18.05.2024, 15:11
Цитата Сообщение от Catstail Посмотреть сообщение
кот Бегемот, у меня больше получилось...
Python
1
2
3
4
5
6
7
8
9
from itertools import*
k=0
for x in set(permutations('ПАРАБОЛА',r=8)):
    s=''.join(x)
    for g in 'ОА':s=s.replace(g,'А')
    for sg in 'ПРБЛ':s=s.replace(sg,'П')
    if 'ПП' not in s and 'АА' not in s:
        k+=1
print(k)
Ответ 192
2
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,707
Записей в блоге: 14
18.05.2024, 17:29
кот Бегемот, Ваша правда. Я не учёл возможные повторы:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
from itertools import permutations
 
def check(w):
    s=set(('п','р','б','л'))
    g=set(('о','а'))
    s1=set(w[0::2])
    s2=set(w[1::2])
    return (s1==s and s2==g) or (s1==g and s2==s) 
 
s="парабола"
perms=list(permutations(list(s)))
 
res=[]
 
for x in perms:
    if check(x):
        if not (x in res):
            res.append(x)
print(len(res))
1
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
18.05.2024, 21:54
Catstail, у меня проще. Мы вообще стараемся писать примитивные программы, иначе ученики не поймут
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,707
Записей в блоге: 14
19.05.2024, 07:54
кот Бегемот, скорее у Вас не проще, а короче. Ваш код требует для понимания больше усилий. В моем коде все согласные буквы (и все гласные) равноправны между собой. А из Вашего кода это не столь очевидно.

Цитата Сообщение от кот Бегемот Посмотреть сообщение
иначе ученики не поймут
- если на то пошло, главная вычислительная проблема этой задачи - генерация перестановок. Но её мы перекладываем на Питон.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.05.2024, 07:54
Помогаю со студенческими работами здесь

Егэ номер 2 таблица истинности
Здравствуйте, у меня возник вопрос. Я решаю задачу через питон и у меня что то постоянно не получается. То есть таблица истинности не...

ЕГЭ 5 номер. Ошибка в программе
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1. Строится двоичная запись...

Перебор чисел 25 номер егэ
Среди чисел, больших 520000, найти такие, сумма всех делителей которых, не считая единицы и самого числа, образует число-палиндром...

Python, задание из ЕГЭ 23 номер
Исполнитель преобразует число, записанное на экране. У исполнителя есть три команды, которым присвоены номера: 1. Прибавь 2 2. Умножь...

Объясните пожалуйста задание ЕГЭ по информатике номер 15
''' Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m». Для какого наибольшего...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru