На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.

Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.

Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».

АвторСообщение





Сообщение: 13
ссылка на сообщение  Отправлено: 28.11.22 07:52. Заголовок: Комбинаторика. Задания 8


В задаче № 5750. (М. Байрамгулов) Ваня составляет 6-буквенные слова из букв слова КОМПЬЮТЕР так, что в них можно убрать три буквы и получить слово КОТ. Сколько различных слов может составить Ваня?

Прошу уточнить условие. Что имеется ввиду?
Все возможные перестановки с повторениями из 6 букв, в которых есть
буквы К О Т в любом порядке или же порядок расположения этих букв важен?
Ответ не сходится
{from itertools import *
al='КОМПЬЮТЕР'
a = list(product(al, repeat=6))
b = list(permutations(al, 6))
k=0
for i in a:
sl=''.join(i)
#print(sl)
k1=sl.find('К')
k2=sl.find('О')
k3=sl.find('Т')
if 'К'in sl and 'О'in sl and 'Т'in sl:
if k1<k2<k3:
#print(sl)
k=k+1
print('Размещения с повторениями ',k)
for i in b:
sl=''.join(i)
#print(sl)
k1=sl.find('К')
k2=sl.find('О')
k3=sl.find('Т')
if 'К'in sl and 'О'in sl and 'Т'in sl:
if k1<k2<k3:
#print(sl)
k=k+1
print('Перестановки ',k)

#Ответ: 11249
# product(al, repeat=6) дает 8550
# Перестановки - permutations 10950}

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 22 , стр: 1 2 All [только новые]







Сообщение: 14
ссылка на сообщение  Отправлено: 28.11.22 07:56. Заголовок: Комбинаторика № 5749


(№ 5749) (М. Байрамгулов) Миша составляет 5-буквенные слова из букв слова КОМПЬЮТЕР так, что в них можно переставить буквы и получить палиндром. Сколько различных слов может составить Миша?
Ответ на сайте 8649...Ответ не сходится, у меня 729
{from itertools import *
al='КОМПЬЮТЕР'
c=0
sl=''
b = list(product(al, repeat=5))
k=0
print('Перестановки ',k)
for i in b:
sl=''.join(i)
#print(sl)
if sl[0]==sl[4] and sl[1]==sl[3]:
print(sl)
k=k+1
print('Количество слов ',k)
}

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 236
ссылка на сообщение  Отправлено: 30.12.22 04:11. Заголовок: Елена_10 пишет: так..


Елена_10 пишет:

 цитата:
так, что в них можно переставить буквы и получить палиндром


У меня тоже 729, видимо мы одинаково понимаем вопрос, но не совсем так, как его ставит автор!

Может быть, что под переставить буквы нужно понимать следующее, допустим было слово ОРПОР перестановкой двух символов получим палиндром - РОПОР
В таком случае, даже из любого слова, состоящего из трех разных символов, например ПРООР или ПРРОО можно построить как минимум по 2 палиндрома!

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 233
ссылка на сообщение  Отправлено: 29.12.22 06:15. Заголовок: Посмотрите решение, ..


Елена_10 пишет:

 цитата:
порядке или же порядок расположения этих букв важен?
Ответ не сходится


Порядок важен!
Посмотрите решение, предложенное Поляковым К.Ю., и сможете скорректировать свое решение
 
count = 0
from itertools import product
for n in set(product( 'КОМПЬЮТЕР', repeat=6 )):
n = ''.join(n)
if n.find('К') >= 0 and n.rfind('Т')>= 0:
for j in range(n.find('К')+1, n.rfind('Т')):
if n[j] == 'О':
count += 1
break

print( count )


Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 234
ссылка на сообщение  Отправлено: 29.12.22 06:22. Заголовок: а можно и так: ss =..


а можно и так:
 
ss = set()
from itertools import product
for n in set(product( 'КОМПЬЮТЕР', repeat=6 )):
n = ''.join(n)
if n.find('К') >= 0 and n.rfind('Т')>= 0:
for j in range(n.find('К')+1, n.rfind('Т')):
if n[j] == 'О':
ss.add(n)
print( len(ss) )


Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 235
ссылка на сообщение  Отправлено: 30.12.22 03:29. Заголовок: А вот еще более упрощенный вариант задачи 302 ege 8


 
ss = set()
from itertools import product
for n in set(product( 'КОМПЬЮТЕР', repeat=6 )):
n = ''.join(n)
if n.find('К') >= 0 and n.rfind('Т')>= 0:
if n.find('О', n.find('К'), n.rfind('Т'))>0:
ss.add(n)
print(len(ss))


Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 20
ссылка на сообщение  Отправлено: 07.01.23 11:53. Заголовок: Ответ верен, если бу..


Ответ верен, если буквы могут повторяться. Иначе верный ответ 2400
В решении Полякова (если распечатать учтенные им слова) есть такие слова: 'КОКТКК', 'ККОКТК', 'КОТККК', 'ККККОТ', 'КККОКТ', 'ККОТКК', 'КОКККТ', 'КККОТК'
Буква К повторяется...

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 244
ссылка на сообщение  Отправлено: 08.01.23 10:11. Заголовок: Ж пишет: Ответ вере..


Ж пишет:

 цитата:
Ответ верен, если буквы могут повторяться. Иначе верный ответ 2400
В решении Полякова (если распечатать учтенные им слова) есть такие слова: 'КОКТКК', 'ККОКТК', 'КОТККК', 'ККККОТ', 'КККОКТ', 'ККОТКК', 'КОКККТ', 'КККОТК'
Буква К повторяется...


Пофиг, в условии оговорено, если убрать 3 буквы: 'КОКТКК', где сказано, что они не должны быть буквами К?
К примеру, убираем ровно три буквы, выделенных красным, и получаем слово - КОТ

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 21
ссылка на сообщение  Отправлено: 07.01.23 14:43. Заголовок: Решение с помощью ре..


Решение с помощью регулярных выражений:
 
alfavit='КОМПЬЮТЕР'; spisok=[]
for slova in product(alfavit,repeat=6): # ответ 2400
#for slova in permutations(alfavit,6): # ответ 11249
slovo=''.join(slova)
if fullmatch('.*К.*О.*Т.*',slovo):
spisok.append(slovo)
print(len(spisok))


Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 246
ссылка на сообщение  Отправлено: 09.01.23 05:10. Заголовок: Ж пишет: alfavit=&#..


Ж пишет:

 цитата:
alfavit='КОМПЬЮТЕР'; spisok=[]
for slova in product(alfavit,repeat=6): # ответ 2400
#for slova in permutations(alfavit,6): # ответ 11249
slovo=''.join(slova)
if fullmatch('.*К.*О.*Т.*',slovo):
spisok.append(slovo)
print(len(spisok))


запустил ваш код и вот что получил:
Traceback (most recent call last):
...
if fullmatch('.*К.*О.*Т.*',slovo):
NameError: name 'fullmatch' is not defined


Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 247
ссылка на сообщение  Отправлено: 09.01.23 05:20. Заголовок: s11kai пишет: NameE..


s11kai пишет:

 цитата:
NameError: name 'fullmatch' is not defined



Код удалось запустить, после небольшой доработки:
 
import re
alfavit='КОМПЬЮТЕР'; spisok=[]
for slova in product(alfavit,repeat=6): # ответ 2400
#for slova in permutations(alfavit,6): # ответ 11249
slovo=''.join(slova)
if re.fullmatch('.*К.*О.*Т.*',slovo):
spisok.append(slovo)
print(len(spisok))

Причем вместо указанного Вами ответа в 2400, он дал ответ 11249

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 243
ссылка на сообщение  Отправлено: 08.01.23 10:04. Заголовок: Елена_10 пишет: № 5..


Елена_10 пишет:

 цитата:
№ 5750. (М. Байрамгулов) Ваня составляет 6-буквенные слова из букв слова КОМПЬЮТЕР так, что в них можно убрать три буквы и получить слово КОТ. Сколько различных слов может составить Ваня?



А где здесь оговаривается, что буквы не могут повторяться?
А раз нет, то и ответ = 11249

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 30
ссылка на сообщение  Отправлено: 08.01.23 14:23. Заголовок: Ваня составляет 6-бу..



 цитата:
Ваня составляет 6-буквенные слова из букв слова КОМПЬЮТЕР


Представьте, что вы разрезали слово на буквы и из них собираете новые слова. Там нет повторяющихся... , поэтому считаю, что формулировка неоднозначна.
Это уже вопросы к русскому языку и его пониманию...
Я понимаю так...
Иначе, зачем в аналогичном задании 5720 все так подробно оговорено:

 цитата:
Алина составляет пятибуквенные слова из букв слова POLYGON, причем известно, что буквы в словах могут повторяться любое количество раз или же не встречаться вовсе. Помогите Алине найти количество различных слов, являющимися палиндромами и содержащими в середине гласную букву.



Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 245
ссылка на сообщение  Отправлено: 09.01.23 05:05. Заголовок: Ж пишет: поэтому сч..


Ж пишет:

 цитата:
поэтому считаю, что формулировка неоднозначна.
Это уже вопросы к русскому языку и его пониманию...


Нашел автора этого задания в ege8 от Полякова:

302) (М. Байрамгулов) Ваня составляет 6-буквенные слова из букв слова КОМПЬЮТЕР так, что в них можно убрать три буквы и получить слово КОТ. Сколько различных слов может составить Ваня?

Что характерно, там стоит ответ 11249

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 248
ссылка на сообщение  Отправлено: 09.01.23 05:32. Заголовок: Ж пишет: Представьт..


Ж пишет:

 цитата:
Представьте, что вы разрезали слово на буквы и из них собираете новые слова


А почему не взять "кассу" из букваря, где под каждой буквой лежит некоторое количество их копий

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 31
ссылка на сообщение  Отправлено: 09.01.23 11:25. Заголовок: Возможно потому, что..


Возможно потому, что буквы сказали брать не из кассы, а из слова... А в слове КОМПЬЮТЕР ровно 9 букв и клонов нет...
И я не оспариваю ответ, я беру на заметку, что авторы так понимают это задание. И в будущем буду учитывать их понимание.

И есть же формулировки, которые эту неоднозначность не порождают:
    Сколько пятибуквенных слов можно составить из букв данного алфавита А, Б, В, Г, Д
    Вася составляет 5-буквенные слова, в которых встречаются только буквы А, Б, В, Г,


Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 22 , стр: 1 2 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 1974
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет