Advertisement
YorKnEz

Untitled

May 24th, 2019
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.36 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. using namespace std;
  4.  
  5. void init(int **a, int n, int m) {
  6. for (int i = 0; i < n; i++) {
  7. for (int j = 0; j < m; j++) {
  8. a[i][j] = 0;
  9. }
  10. }
  11. }
  12.  
  13. void romb(int x, int y, int l, int **a, int n, int m) {
  14. int k = 0;
  15.  
  16. for (int i = 0; i < l; i++) {
  17. for (int i = 0; i < (2*k)+1; i++) {
  18. a[x+i][y-k+i] = 1;
  19. }
  20.  
  21. k++;
  22. }
  23.  
  24. k-=2;
  25.  
  26. for (int i = 0; i < l-1; i++) {
  27. for (int i = 0; i < (2*k)+1; i++) {
  28. a[x+i][y-k+i] = 1;
  29. }
  30.  
  31. k--;
  32. }
  33. }
  34.  
  35. void print(int **a, int n, int m) {
  36. for (int i = 0; i < n; i++) {
  37. for (int j = 0; j < m; j++) {
  38. printf("%d ", a[i][j]);
  39. }
  40.  
  41. printf("\n");
  42. }
  43. }
  44.  
  45. int main()
  46. {
  47. freopen("romburi.in", "r", stdin);
  48. freopen("romburi.out", "w", stdout);
  49.  
  50. int n, m, p;
  51.  
  52. scanf("%d %d %d", &n, &m, &p);
  53.  
  54. int a[n][m];
  55.  
  56. init(a, n, m);
  57.  
  58. int x, y, l;
  59.  
  60. for (int i = 0; i < p; i++) {
  61. scanf("%d %d %d", &x, &y, &l);
  62.  
  63. romb(x, y, l, a, n, m);
  64. }
  65.  
  66. fclose(stdin);
  67.  
  68. int c = 0;
  69.  
  70. for (int i = 0; i < n; i++) {
  71. for (int j = 0; j < m; j++) {
  72. if (a[i][j] == 0) {
  73. c++;
  74. }
  75. }
  76. }
  77.  
  78. printf("%d", c);
  79.  
  80. fclose(stdout);
  81.  
  82. return 0;
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement