10749. Створення рядків 2
Відправити розв'язок
Бали:
30
Time limit:
1.0s
Memory limit:
500M
Authors:
Problem type
Allowed languages
C++, Java, Pascal, Python
Для заданого рядка необхідно обчислити кількість різних рядків, які можна створити за допомогою перестановки його символів.
Обмеження
- \(1≤n≤10^6\)
Формат вхідних даних
Єдиний вхідний рядок містить рядок довжиною \(n\). Кожен символ знаходиться між \(a\)–\(z\).
Формат вихідних даних
Вивести кількість різних рядків за модулем \(10^9+7\) .
Приклад вхідних даних
aabac
Приклад вихідних даних
20
Коментарі