private static int numDistinctHelper(char[] s_char, int s_start, char[] t_char, int t_start) {
        if (t_char.length == t_start) {
            return 1;
        }
        else if (s_char.length == s_start) {
            return 0;
        }

        int num = 0;
        char c = t_char[t_start];
        for (int j = s_start; j < s_char.length; j++) {
            if (s_char[j] == c) {
                num += numDistinctHelper(s_char, j + 1, t_char, t_start + 1);
            }
        }
        return num;
    }