1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
   | ```
 
 
  ## C++模板
  ```c++ int arrange(int m,int n){     if(m==n) return n;     return m*arrange(m-1,n); }
  void dfs(int x){     if(x==n){         for(int i =1;i<=n;++i)             printf("%d",a[i]);         for(int i=1;i<=n;++i){             if(!mark[i]){                 a[x]=i;++mark[i];             }             dfs(x+1);             mark[i]=0;          }     } }
   |