import std.algorithm; import std.array; import std.conv; import std.math; import std.stdio; import std.string; import std.range; int readint() { return readln.chomp.to!int; } int[] readints() { return readln.split.map!(to!int).array; } int fact(int n) { return n < 2 ? 1 : n * fact(n - 1); } int calc(string s) { int[char] m; foreach (c; s) { m[c]++; } int n = fact(cast(int) s.length); foreach (x; m.values) { n /= fact(x); } return n - 1; // 自分自身を除くため 1 引く } void main() { auto s = readln.chomp; writeln(calc(s)); }