import java.io.*;
import java.util.*;
public class Main {
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
static BufferedWriter out = new BufferedWriter(new OutputStreamWriter(System.out));
static int N,result;
static String X;
static HashSet<Integer> hash = new HashSet<>();
static StringBuilder sb = new StringBuilder();
public static void main(String[] args) throws IOException {
N = Integer.parseInt(br.readLine());
X = br.readLine();
result = 0;
DFS();
out.flush();
out.close();
br.close();
}
private static void DFS() throws IOException {
if(sb.length() == N){
result++;
if(sb.toString().equals(X)){
out.write(result + "");
return ;
}
}
for(int i = 1 ; i <= N ; i++){
if(!hash.contains(i)){
hash.add(i);
sb.append(i);
DFS();
hash.remove(i);
sb.deleteCharAt(sb.length()-1);
}
}
}
}
用的是DFS算法