#include using namespace std; long long dp[61][61][3601]; int main() { string S; cin >> S; int sum1 = 0,sum2 = 0; for(int i = 0; i < S.size(); i++) { sum1 += S[i]-'0'; } for(int i = 0; i < S.size(); i++) { for(int j = i; j < S.size(); j++) { if(S[i] > S[j]) { sum2++; } } } dp[0][0][0] = 1; for(int i = 0; i < S.size(); i++) { for(int j = 0; j < S.size(); j++) { for(int k = 0; k < S.size()*S.size(); k++) { dp[i+1][j+1][k] += dp[i][j][k]; dp[i+1][j][k+j] += dp[i][j][k]; } } } cout << dp[S.size()][sum1][sum2] << endl; }