Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 7, 2014 11:25:22

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

Найти "правильные" слова.

kozlo22
Я не могу понять: куда А деется и как должно выглядеть решение.
возьми множество букв всех слов
для каждой буквы определи её уникальность (в одном слове - да, в двух словах - нет)
когда буквы определены, выбери только те слова, в которых нет неуникальных

kozlo22
if {x for x in i}.isdisjoint({x for x in j}):
set(i).isdisjoint(j)



Офлайн

#2 Янв. 7, 2014 16:48:34

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Найти "правильные" слова.

py.user.next
выбери только те слова, в которых нет неуникальных
Могу предложить свою интерпретацию постановки задачи. Из заданного конечного набора различных слов выбрать максимальное по размеру подмножество, так чтобы любая пара слов в нем не содержала одинаковых букв. Для данной постановки задачи ваше решение не подходит. Пример: Для вашего подхода будет пустое множество, а для моей постановки подходит любое из приведенных.

Вопрос к ТС:
Вы какую постановку задачи имеете ввиду? (хотя из примера вроде следует что я не прав).

ФП головного мозга: :)
from collections import Counter
wd = ['noise', 'qw', 'job']
ld = Counter("".join(map(lambda x:"".join(list(set(x))),wd)))
bilet = set([i for i in ld if ld[i]>1])
[i for i in wd if bilet.isdisjoint(set(i))]




Отредактировано doza_and (Янв. 7, 2014 16:54:14)

Офлайн

#3 Янв. 8, 2014 00:12:24

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

Найти "правильные" слова.

doza_and
Пример: Для вашего подхода будет пустое множество
пустое множество там будет, если в списке только неправильные слова
то есть слова, в которых есть хотя бы одна буква из хотя бы одного другого слова

doza_and
Из заданного конечного набора различных слов
слова могут быть любые



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version