fork(5) download
  1. #include<stdio.h>
  2. #include<string.h>
  3. int la,lb;
  4. char a[1000000],b[100005];
  5. int prinb()
  6. {
  7. printf("%s",b);
  8. return 0;
  9. }
  10. int prina(int q,int w)
  11. {
  12. for(int i=q;i<w;i++)
  13. {
  14. printf("%c",a[i]);
  15. }
  16. return 0;
  17. }
  18.  
  19. int main()
  20. {
  21. int t;
  22. //scanf("%d",&t);
  23. while(1)
  24. {
  25. if( scanf("%s %s",&a,&b)==EOF)
  26. return 0;
  27. //int la,lb;
  28.  
  29. la=strlen(a);
  30. lb=strlen(b);
  31. strcat(a,b);
  32. int i;
  33. if(la>=lb)
  34. {
  35. for(i=0;i<la;i++)
  36. { // int y=0;
  37. if(a[i]>b[0])
  38. break;
  39. int y=0;
  40. if(a[i]==b[0])
  41. {
  42. for(int j=i;j<lb +i;j++)
  43. {
  44. if(a[j]>b[(j-i)%lb])
  45. {
  46. y=1;
  47. break;
  48. }
  49. }
  50. }
  51. if(y==1)
  52. break;
  53. }
  54. prina(0,i);
  55. prinb();
  56. prina(i,la);
  57. printf("\n");
  58. }
  59. else if(la<lb)
  60. {
  61. for(i=0;i<la;i++)
  62. {
  63. if(a[i]>b[0])
  64. break;
  65. int y=0;
  66. if(a[i]==b[0])
  67. { // printf("\nsomething found\n");
  68. for(int j=i;j<lb+i;j++)
  69. {
  70. if(a[j]>b[(j-i)%lb])
  71. {
  72. y=1;
  73. break;
  74. }
  75. }
  76. }
  77. if(y==1)
  78. break;
  79. }
  80. if(i<la)
  81. { // printf("\n corner");
  82. prina(0,i);
  83. prinb();
  84. prina(i,la);
  85. printf("\n");
  86. }
  87. else
  88. { int p=0;
  89. for(i=la;i<lb;i++)
  90. {
  91. if(a[i]>b[i])
  92. { p=1;prinb();
  93. prina(0,la);
  94. printf("\n");
  95.  
  96. break;
  97. }
  98.  
  99. }
  100. if(p==0)
  101. { prina(0,la);
  102. prinb();
  103. printf("\n");
  104.  
  105. }
  106. }
  107. }
  108.  
  109. }
  110.  
  111. }
  112.  
Success #stdin #stdout 0s 4416KB
stdin
369
4799
666
12345
987
9876
8769
9876
987 987987986
987987986 987
987 987987989
4589 67
4589 6745
564 564356
564 56334
564 564564
333 333
3 333
33333 3
stdout
3479969
12345666
9876987
87698769
987987986987
987987986987
987987987989
456789
45674589
564356564
56334564
556456464
333333
3333
333333