Advertisement
Guest User

Untitled

a guest
Nov 15th, 2021
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.96 KB | None | 0 0
  1. #include <iostream>
  2. //#include <fstream>
  3.  
  4. using namespace std;
  5.  
  6. struct Cell
  7. {
  8. int x, y;
  9. int value;
  10. };
  11.  
  12. int main()
  13. {
  14. //ifstream in("in10.txt");
  15. //cin.rdbuf(in.rdbuf());
  16.  
  17. setlocale(LC_ALL, "hun");
  18. int X, Y;
  19. cin >> X >> Y;
  20. while (X <= 0 || X > 100 || Y <= 0 || Y > 100) {
  21. cin >> X >> Y;
  22. }
  23.  
  24. Cell board[X][Y];
  25.  
  26. for (int i = 0; i < X; i++)
  27. {
  28. for (int j = 0; j < Y; j++)
  29. {
  30. cin >> board[i][j].value;
  31. while (board[i][j].value < 0 || board[i][j].value > 100) {
  32. cin >> board[i][j].value;
  33. }
  34. board[i][j].y = j;
  35. board[i][j].x = i;
  36.  
  37. }
  38. }
  39. int maxT = 0;
  40. int maxy = 0;
  41. int maxx = 0;
  42. int maxl = 0;
  43. int maxk = 0;
  44. int count = 0;
  45. int t = 0;
  46.  
  47. for (int i = 0; i < X; i++)
  48. {
  49. for (int j = 0; j < Y; j++)
  50. {
  51. for (int l = 0; l < X-i; l++)
  52. {
  53. for (int k = 0; k < Y-j; k++)
  54. {
  55. count = 0;
  56. for( int m = 0; m <= l; ++m ) {
  57. for( int n = 0; n <= k; ++n ) {
  58. if (board[i + m][j + n].value != 0)
  59. {
  60. count++;
  61. }
  62. }
  63. }
  64. t = ((l + 1) * (k + 1));
  65. if ( double( count ) / t >= 0.5 && t >= maxT)
  66. {
  67. maxx = i;
  68. maxy = j;
  69. maxl = i + l;
  70. maxk = j + k;
  71. maxT = t;
  72. }
  73. }
  74. }
  75. }
  76. }
  77. cout << maxT << endl;
  78. cout << "A (" << maxy + 1 << "," << maxx + 1 << "), (" << maxk + 1 << "," << maxl +1 << ") sarkú terület a megoldás." << endl;
  79. return 0;
  80. }
  81.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement