fork download
  1. #include<stdio.h>
  2. #include<string.h>
  3.  
  4. void calculate(char *a, int i, int n);
  5. void swap (char *x, char *y);
  6. int m = 0;
  7.  
  8. int main(){
  9.  
  10. char str[10] = "IoT";
  11. int len=0,i=0; len = strlen(str);
  12. calculate(str, 0, len-1); printf("%d\n",m);
  13. }
  14.  
  15. void swap (char *x, char *y) {
  16.  
  17. char temp;
  18.  
  19. temp =*x;
  20.  
  21. *x=*y;
  22. *y = temp;
  23. }
  24.  
  25. void calculate(char *a, int i, int n) {
  26.  
  27. int j =0;
  28. if (i == n){
  29.  
  30. m++ ;
  31. }
  32. else{
  33.  
  34. for (j=i; j<=n; j++){
  35. swap((a+i), (a+j));
  36. calculate(a, i+1, n);
  37.  
  38. swap((a+i), (a+j));
  39. }}}
Success #stdin #stdout 0.01s 5548KB
stdin
Standard input is empty
stdout
6