Це питання сильно грунтується на цьому питанні , але повинно створювати ряд додаткових труднощів.
Ваше завдання
Ви повинні написати програму або функцію, яка, отримуючи рядок, друкує всі можливі анаграми з неї. Для цього питання анаграма - це рядок, який містить той самий символ, що й початковий рядок, але не є початковим рядком. Субанаграма - це анаграма підрядка введеного рядка. Анаграми та субранаграми не повинні бути або містити фактичні слова.
Вхідні дані
Ви можете прийняти рядок, який може бути будь-якої довжини> 0, будь-яким стандартним способом введення. Він може містити будь-які символи ASCII.
Вихідні дані
Ви можете вивести всі можливі анаграми та субранаграми введеного рядка будь-яким стандартним способом. Ви не повинні виводити один і той же рядок двічі або виводити рядок, рівний вхідному.
Інші правила
Стандартні лазівки заборонені
Оцінка балів
Це кодовий гольф , виграє найменше байт.