Advertisement
Derga

Untitled

Oct 9th, 2023
805
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.61 KB | None | 0 0
  1. #include <algorithm>
  2. #include <iostream>
  3. #include <climits>
  4. #include <vector>
  5.  
  6. using namespace std;
  7.  
  8. void GetData(vector<vector<int>>& sequences) {
  9.     for (vector<int>& sequence : sequences) {
  10.         for (int& number : sequence) {
  11.             cin >> number;
  12.         }
  13.     }
  14. }
  15.  
  16. int GetTwoArraysElementsMinMaxIdx(const vector<int>& incr, const vector<int>& decr) {
  17.     int cur_max = INT_MAX;
  18.     int max_idx = -1;
  19.     for (int i = 0; i < incr.size(); ++i) {
  20.         if (cur_max > incr[i]  && cur_max > decr[i])
  21.         {
  22.             cur_max = max(incr[i], decr[i]);
  23.             max_idx = i;
  24.         }
  25.     }
  26.     return max_idx;
  27. }
  28.  
  29. int main() {
  30.     int increasing_count, decreasing_count, numbers_count;
  31.     cin >> increasing_count >> decreasing_count >> numbers_count;
  32.     vector<vector<int>> increasing(increasing_count, vector<int>(numbers_count));
  33.     vector<vector<int>> decreasing(decreasing_count, vector<int>(numbers_count));
  34.  
  35.     GetData(increasing);
  36.     GetData(decreasing);
  37.     int requests_count;
  38.     cin >> requests_count;
  39.     for (int i = 0; i < requests_count; ++i) {
  40.         int incr_array_idx, decr_array_idx;
  41.         cin >> incr_array_idx >> decr_array_idx;
  42.         --incr_array_idx;
  43.         --decr_array_idx;
  44.         cout << GetTwoArraysElementsMinMaxIdx(increasing[incr_array_idx], decreasing[decr_array_idx]) + 1 << '\n';
  45.     }
  46.  
  47.     return 0;
  48. }
  49.  
  50. /*
  51. test1
  52. 4 3 5
  53. 1 2 3 4 5
  54. 1 1 1 1 1
  55. 0 99999 99999 99999 99999
  56. 0 0 0 0 99999
  57. 5 4 3 2 1
  58. 99999 99999 99999 0 0
  59. 99999 99999 0 0 0
  60. 12
  61. 1 1
  62. 1 2
  63. 1 3
  64. 2 1
  65. 2 2
  66. 2 3
  67. 3 1
  68. 3 2
  69. 3 3
  70. 4 1
  71. 4 2
  72. 4 3
  73.  
  74. 3
  75. 4
  76. 3
  77. 5
  78. 4
  79. 3
  80. 1
  81. 4
  82. 3
  83. 4
  84. 4
  85. 4
  86. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement