Advertisement
nicuvlad76

Untitled

Feb 25th, 2023
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.55 KB | None | 0 0
  1. #include <fstream>
  2. using namespace std;
  3. ifstream fin("piesesah.in");
  4. ofstream fout("piesesah.out");
  5. int n,r,m,t,a[1003][1003],i1[1000003],j1[1000003],i,j,b[1003][1003];
  6. char x[1000003];
  7. int main()
  8. {fin>>n>>m>>t;
  9. for(r=1;r<=m;r++)
  10. {fin>>x[r]>>i1[r]>>j1[r];
  11. a[i1[r]][j1[r]]=2;
  12. }
  13. for(r=1;r<=m;r++)
  14. {
  15. if(x[r]=='p'){if(a[i1[r]-1][j1[r]-1]!=2)a[i1[r]-1][j1[r]-1]=1;
  16. if(a[i1[r]-1][j1[r]+1]!=2)a[i1[r]-1][j1[r]+1]=1;
  17. if(a[i1[r]+1][j1[r]-1]!=2)a[i1[r]+1][j1[r]-1]=1;
  18. if(a[i1[r]+1][j1[r]+1]!=2)a[i1[r]+1][j1[r]+1]=1;
  19. }
  20. if(x[r]=='r'){if(a[i1[r]-1][j1[r]-1]!=2)a[i1[r]-1][j1[r]-1]=1;
  21. if(a[i1[r]-1][j1[r]+1]!=2)a[i1[r]-1][j1[r]+1]=1;
  22. if(a[i1[r]+1][j1[r]-1]!=2)a[i1[r]+1][j1[r]-1]=1;
  23. if(a[i1[r]+1][j1[r]+1]!=2)a[i1[r]+1][j1[r]+1]=1;
  24. if(a[i1[r]][j1[r]-1]!=2)a[i1[r]][j1[r]-1]=1;
  25. if(a[i1[r]-1][j1[r]]!=2)a[i1[r]-1][j1[r]]=1;
  26. if(a[i1[r]+1][j1[r]]!=2)a[i1[r]+1][j1[r]]=1;
  27. if(a[i1[r]][j1[r]+1]!=2)a[i1[r]][j1[r]+1]=1;
  28. }
  29. if(x[r]=='q'){for(i=i1[r]+1;i<=n;i++)
  30. {if(a[i][j1[r]]!=2)a[i][j1[r]]=1;
  31. else i=n+1;
  32. }
  33. for(i=i1[r]-1;i>=1;i--)
  34. {if(a[i][j1[r]]!=2)a[i][j1[r]]=1;
  35. else i=0;
  36. }
  37. for(i=j1[r]+1;i<=n;i++)
  38. {if(a[i1[r]][i]!=2)a[i1[r]][i]=1;
  39. else i=n+1;
  40. }
  41. for(i=j1[r]-1;i>=1;i--)
  42. {if(a[i1[r]][i]!=2)a[i1[r]][i]=1;
  43. else i=0;
  44. }
  45. j=j1[r];
  46. for(i=i1[r]+1;i<=n&&j<=n;i++)
  47. {j++;
  48. if(a[i][j]!=2)a[i][j]=1;
  49. else i=n+1;
  50. }
  51. j=j1[r];
  52. for(i=i1[r]-1;i>=1&&j<=n;i--)
  53. {j++;
  54. if(a[i][j]!=2)a[i][j]=1;
  55. else i=0;
  56. }
  57. j=j1[r];
  58. for(i=i1[r]+1;i<=n&&j>=1;i++)
  59. {j--;
  60. if(a[i][j]!=2)a[i][j]=1;
  61. else i=n+1;
  62. }
  63. j=j1[r];
  64. for(i=i1[r]-1;i>=1&&j>=1;i--)
  65. {j--;
  66. if(a[i][j]!=2)a[i][j]=1;
  67. else i=0;
  68. }
  69. }
  70. if(x[r]=='n'){j=j1[r];
  71. for(i=i1[r]+1;i<=n&&j<=n;i++)
  72. {j++;
  73. if(a[i][j]!=2)a[i][j]=1;
  74. else i=n+1;
  75. }
  76. j=j1[r];
  77. for(i=i1[r]-1;i>=1&&j<=n;i--)
  78. {j++;
  79. if(a[i][j]!=2)a[i][j]=1;
  80. else i=0;
  81. }
  82. j=j1[r];
  83. for(i=i1[r]+1;i<=n&&j>=1;i++)
  84. {j--;
  85. if(a[i][j]!=2)a[i][j]=1;
  86. else i=n+1;
  87. }
  88. j=j1[r];
  89. for(i=i1[r]-1;i>=1&&j>=1;i--)
  90. {j--;
  91. if(a[i][j]!=2)a[i][j]=1;
  92. else i=0;
  93. }
  94. }
  95. if(x[r]=='t'){for(i=i1[r]+1;i<=n;i++)
  96. {if(a[i][j1[r]]!=2)a[i][j1[r]]=1;
  97. else i=n+1;
  98. }
  99. for(i=i1[r]-1;i>=1;i--)
  100. {if(a[i][j1[r]]!=2)a[i][j1[r]]=1;
  101. else i=0;
  102. }
  103. for(i=j1[r]+1;i<=n;i++)
  104. {if(a[i1[r]][i]!=2)a[i1[r]][i]=1;
  105. else i=n+1;
  106. }
  107. for(i=j1[r]-1;i>=1;i--)
  108. {if(a[i1[r]][i]!=2)a[i1[r]][i]=1;
  109. else i=0;
  110. }
  111. }
  112. if(x[r]=='c'){i=i1[r];j=j1[r];
  113. if((i+2<=n)&&(a[i+2][j+1]!=2))a[i+2][j+1]=1;
  114. if((i+2<=n)&&(a[i+2][j-1]!=2))a[i+2][j-1]=1;
  115. if((i-2>=1)&&(a[i-2][j+1]!=2))a[i-2][j+1]=1;
  116. if((i-2>=1)&&(a[i-2][j-1]!=2))a[i-2][j-1]=1;
  117. if((j+2<=n)&&(a[i+1][j+2]!=2))a[i+1][j+2]=1;
  118. if((j+2<=n)&&(a[i-1][j+2]!=2))a[i-1][j+2]=1;
  119. if((j-2>=1)&&(a[i+1][j-2]!=2))a[i+1][j-2]=1;
  120. if((j-2>=1)&&(a[i-1][j-2]!=2))a[i-1][j-2]=1;
  121. }
  122. }
  123. for(i=1;i<=t;i++)
  124. {fin>>i1[i]>>j1[i];
  125. fout<<a[i1[i]][j1[i]]<<"\n";
  126. }
  127.  
  128. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement