fork download
  1. #include<stdio.h>
  2. #include<string.h>
  3.  
  4. // 並べ替え結果処理
  5. void kekka_shori(char *p)
  6. {
  7. puts(p);
  8. }
  9.  
  10. // 文字列の右n桁を左にスライド
  11. void narabe(char *d, int n)
  12. {
  13. int i, j, len = strlen(d);
  14. char c;
  15.  
  16. if (n <= 1) {
  17. kekka_shori(d);
  18. return;
  19. }
  20. for (j = 0; j < n; j++) {
  21. narabe(d, n - 1);
  22. c = d[len - n];
  23. for (i = 0; i < n - 1; i++) {
  24. d[len - n + i] = d[len - n + i + 1];
  25. }
  26. d[len - n + i] = c;
  27. }
  28. }
  29.  
  30. int main()
  31. {
  32. char d[] = "123";
  33.  
  34. narabe(d, strlen(d));
  35. return 0;
  36. }
Success #stdin #stdout 0.02s 1676KB
stdin
Standard input is empty
stdout
123
132
231
213
312
321