Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- int main()
- { int number,workb,workd;
- char worka[4],workc[4];
- int block[25][2],pl[25],chat[25][25]; //pl那一排下一個的位子
- int i,j;
- int temprow,tempno,nextrow,check,temp;
- while(scanf("%d",&number)!= EOF )
- {
- for(i=0;i<number;i++)
- {block[i][0]=i;
- block[i][1]=0;
- pl[i]=1;
- chat[i][0]=i;
- }
- scanf("%s",worka);
- while(worka[0]!='q' && worka[1]!='u' && worka[2]!='i' && worka[3]!='t')
- {scanf("%d %s %d",&workb,workc,&workd);
- check=1;
- if(block[workb][0]==block[workd][0])
- check=0;
- if(workc[0]=='o' && workc[1]=='n' && workc[2]=='t' && workc[3]=='o' && check!=0)
- {//printf("onto\n");
- temprow=block[workd][0];
- tempno=block[workd][1];
- for(i=tempno+1;i<pl[temprow];i++)
- {nextrow=chat[temprow][i];
- block[nextrow][0]=nextrow;
- block[nextrow][1]=pl[nextrow];
- pl[nextrow]++;
- }
- pl[temprow]=tempno+1;
- }
- if(worka[1]=='o' && check!=0)
- {//printf("move\n");
- temprow=block[workb][0];
- tempno=block[workb][1];
- for(i=tempno+1;i<pl[temprow];i++)
- {nextrow=chat[temprow][i];
- block[nextrow][0]=nextrow;
- block[nextrow][1]=pl[nextrow];
- pl[nextrow]++;
- }
- pl[temprow]=tempno+1;
- }
- if(check!=0)
- {
- temprow=block[workb][0];
- tempno=block[workb][1];
- nextrow=block[workd][0];
- for(i=tempno;i<pl[temprow];i++)
- {
- temp=chat[temprow][i];
- chat[nextrow][pl[nextrow]]=temp;
- block[temp][0]=nextrow;
- block[temp][1]=pl[nextrow];
- pl[nextrow]++;
- }
- pl[temprow]=tempno;
- }
- scanf("%s",worka);
- }
- for(i=0;i<number;i++)
- {printf("%d:",i);
- for(j=0;j<pl[i];j++)
- {
- printf(" %d",chat[i][j]);
- }
- printf("\n");
- }
- }
- //system("PAUSE");
- return 0;
- }
Add Comment
Please, Sign In to add comment