fork download
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<string.h>
  4. int maxsize=100;
  5. static char arr[100];
  6. int top=-1;
  7. char queue[100];
  8. int front=-1;
  9. int rear=-1;
  10. char enqueue(char data){
  11. if(rear+1>=100){
  12. return 0;}
  13. else{
  14. queue[rear+1]=data;
  15. rear++;
  16. return 1;
  17. }}
  18. char dequeue(){
  19. if(front==rear){
  20. return 0;}
  21. else{
  22. char data=queue[front+1];
  23. front++;
  24. return(data);
  25. }}
  26.  
  27. void push(char new){
  28. if(top==maxsize-1){
  29. printf("full stack\n");
  30. }
  31. else{
  32. top++;
  33. arr[top]=new;
  34. }}
  35. char pop(){
  36.  
  37. char tmp;
  38. if(top==-1){
  39. printf("empty");
  40. return tmp;
  41. }
  42. else{
  43. top--;
  44. return (arr[top+1]);
  45. }}
  46. int main(){
  47. int t=1;
  48. int f=0;
  49.  
  50. char stack[10];
  51. char queue[10];
  52.  
  53. char aa[100];
  54. int stringsize=strlen(aa);
  55.  
  56. int i=0;
  57. int counter=0;
  58. scanf("%d\n",&counter);
  59. for(int k=0;k<=counter;k++){
  60. scanf("%c\n",aa);
  61. while(i<stringsize){
  62.  
  63.  
  64. push(aa[i]);
  65. enqueue(aa[i]);
  66. i++;}
  67. int n=0;
  68. while(n<stringsize){
  69. stack[n]=pop();
  70. queue[n]=dequeue();
  71. if(stack[n]==queue[n]){
  72.  
  73. n++;}
  74. else
  75. {
  76. printf("%d\n",f);
  77.  
  78. }
  79. }
  80. if(stack==queue){
  81. printf("%d\n",t);
  82. }
  83. }
  84. return 0;
  85.  
  86. }
  87.  
  88.  
Success #stdin #stdout 0.01s 1720KB
stdin
Standard input is empty
stdout
Standard output is empty