Guest User

Untitled

a guest
Jun 23rd, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.33 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. int main()
  5. { int number,workb,workd;
  6. char worka[4],workc[4];
  7. int block[25][2],pl[25],chat[25][25]; //pl那一排下一個的位子
  8. int i,j;
  9. int temprow,tempno,nextrow,check,temp;
  10. while(scanf("%d",&number)!= EOF )
  11. {
  12. for(i=0;i<number;i++)
  13. {block[i][0]=i;
  14. block[i][1]=0;
  15. pl[i]=1;
  16. chat[i][0]=i;
  17. }
  18. scanf("%s",worka);
  19. while(worka[0]!='q' && worka[1]!='u' && worka[2]!='i' && worka[3]!='t')
  20. {scanf("%d %s %d",&workb,workc,&workd);
  21. check=1;
  22. if(block[workb][0]==block[workd][0])
  23. check=0;
  24. if(workc[0]=='o' && workc[1]=='n' && workc[2]=='t' && workc[3]=='o' && check!=0)
  25. {//printf("onto\n");
  26. temprow=block[workd][0];
  27. tempno=block[workd][1];
  28. for(i=tempno+1;i<pl[temprow];i++)
  29. {nextrow=chat[temprow][i];
  30. block[nextrow][0]=nextrow;
  31. block[nextrow][1]=pl[nextrow];
  32. pl[nextrow]++;
  33. }
  34. pl[temprow]=tempno+1;
  35. }
  36. if(worka[1]=='o' && check!=0)
  37. {//printf("move\n");
  38. temprow=block[workb][0];
  39. tempno=block[workb][1];
  40. for(i=tempno+1;i<pl[temprow];i++)
  41. {nextrow=chat[temprow][i];
  42. block[nextrow][0]=nextrow;
  43. block[nextrow][1]=pl[nextrow];
  44. pl[nextrow]++;
  45. }
  46. pl[temprow]=tempno+1;
  47. }
  48. if(check!=0)
  49. {
  50. temprow=block[workb][0];
  51. tempno=block[workb][1];
  52. nextrow=block[workd][0];
  53. for(i=tempno;i<pl[temprow];i++)
  54. {
  55. temp=chat[temprow][i];
  56. chat[nextrow][pl[nextrow]]=temp;
  57. block[temp][0]=nextrow;
  58. block[temp][1]=pl[nextrow];
  59. pl[nextrow]++;
  60. }
  61. pl[temprow]=tempno;
  62. }
  63. scanf("%s",worka);
  64. }
  65. for(i=0;i<number;i++)
  66. {printf("%d:",i);
  67. for(j=0;j<pl[i];j++)
  68. {
  69. printf(" %d",chat[i][j]);
  70. }
  71. printf("\n");
  72. }
  73. }
  74. //system("PAUSE");
  75. return 0;
  76. }
Add Comment
Please, Sign In to add comment