Advertisement
Guest User

Untitled

a guest
Nov 24th, 2017
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.86 KB | None | 0 0
  1. #include <iostream>
  2. #include <map>
  3. #include <algorithm>
  4. #include <queue>
  5. #include <vector>
  6. #include <numeric>
  7. #include <iomanip>
  8. #include <utility>
  9.  
  10. using namespace std;
  11.  
  12. char Tabuleiro[2][501][501];
  13. //char Tabuleiro2[501][501];
  14.  
  15. int main()
  16. {
  17. long int N, P;
  18. cin >> N >> P;
  19. for (int i = 0; i < P; i++) {
  20. int L, C;
  21. cin >> L >> C;
  22. Tabuleiro[0][L][C] = 'P';
  23. }
  24. for (int i = 0; i < P; i++) {
  25. int L, C;
  26. cin >> L >> C;
  27. Tabuleiro[0][L][C] = 'B';
  28. }
  29.  
  30. int subareasP = P;
  31. int subareasB = P;
  32.  
  33. // Pra cada tamanho de quadrado
  34. for (int n = 1; n <= N; n++)
  35. {
  36. int tab = 1 -( n % 2);
  37. for (int k = 0; k <= N; k++)
  38. {
  39. for (int l = 0; l <= N; l++)
  40. {
  41. Tabuleiro[1 - tab][k][l] = '-';
  42. }
  43. }
  44. // Pra cada posicao desse quadrado no tabuleiro
  45. for (int i = 1; i < N - n + 1; i++)
  46. {
  47. for (int j = 1; j < N - n + 1; j++)
  48. {
  49. char subsquare1 = Tabuleiro[tab][i][j];
  50. char subsquare2 = Tabuleiro[tab][i + 1][j];
  51. char subsquare3 = Tabuleiro[tab][i][j + 1];
  52. char subsquare4 = Tabuleiro[tab][i + 1][j + 1];
  53. bool temPreto, temBranco, temX;
  54. temPreto = subsquare1 == 'P' || subsquare2 == 'P' || subsquare3 == 'P' || subsquare4 == 'P';
  55. temBranco = subsquare1 == 'B' || subsquare2 == 'B' || subsquare3 == 'B' || subsquare4 == 'B';
  56. temX = subsquare1 == 'X' || subsquare2 == 'X' || subsquare3 == 'X' || subsquare4 == 'X';
  57. if (temPreto && !temBranco && !temX)
  58. {
  59. Tabuleiro[1-tab][i][j] = 'P';
  60. subareasP++;
  61. }
  62. else if (!temPreto && temBranco && !temX)
  63. {
  64. Tabuleiro[1-tab][i][j] = 'B';
  65. subareasB++;
  66. }
  67. else if (temPreto && temBranco)
  68. {
  69. Tabuleiro[1 - tab][i][j] = 'X';
  70. }
  71. else
  72. {
  73. Tabuleiro[1-tab][i][j] = '-';
  74. }
  75. }
  76. }
  77. }
  78.  
  79.  
  80. cout << subareasP << " " << subareasB << endl;
  81. int i;
  82. cin >> i;
  83.  
  84. return 0;
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement