Advertisement
YorKnEz

Untitled

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