fork download
  1. #include <iostream>
  2. #include <cstring>
  3. #include <map>
  4. using namespace std;
  5.  
  6. int main() {
  7. char s[15]; //равносильно char * s = new char [15], где 15 - максимальный размер строки
  8. map <char, int> m;
  9. cin >> s;
  10. int l, count = 1;
  11. l = strlen(s);
  12. long long fact[15];
  13. fact[1] = 1;
  14. for (int i = 2; i <= l; i++) //заполняем массив факториалов
  15. fact[i] = fact[i - 1] * i;
  16. for (int i = 0; i < l; i++) //подcчитываем повторения
  17. ++m[s[i]];
  18. for (auto it = m.begin(); it != m.end(); it++)
  19. if (it -> second > 1) count *= fact[it -> second];
  20. cout << fact[l] / count;
  21. return 0;
  22. }
Success #stdin #stdout 0s 15240KB
stdin
asaa
stdout
4