words, в котором все слова одной длины и составлены из одного и того же набора букв (каждое — перестановка любого другого). Слова разбиваются на **семейства**: два слова попадают в одно семейство, если от одного к другому можно перейти цепочкой слов из списка, где каждые два соседних похожи. Например, «abcd» и «badc» не похожи, но окажутся в одном семействе, если в списке есть «bacd».
Верните количество семейств.words=['stone', 'tones', 'notes', 'onset', 'tonse'] → 3
«tones» похоже на «notes» (обмен t и n) и на «tonse» (обмен e и s), так что эти три слова — одно семейство. «stone» и «onset» не похожи ни на одно слово списка, это ещё два семейства. Всего 3.
words=['abcd', 'bacd', 'badc', 'cdab'] → 2
«abcd» → «bacd» → «badc» связаны цепочкой обменов, хотя «abcd» и «badc» напрямую не похожи. «cdab» отличается от каждого из них во всех четырёх позициях. Ответ 2.
words=['xy', 'xy'] → 1
Одинаковые слова считаются похожими, это одно семейство.
len(words) ≤ 300len(words[i]) ≤ 300words[i] состоит из строчных латинских буквwords=['stone', 'tones', 'notes', 'onset', 'tonse']
3
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 30 тестов на сервере, включая скрытые.