Ankit_132

B

Nov 15th, 2023
353
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.94 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main() {
  5.     int t;
  6.     cin >> t;
  7.  
  8.     while (t--) {
  9.         int n;
  10.         cin >> n;
  11.         vector<int> a(n);
  12.  
  13.         for (int i = 0; i < n; ++i)
  14.             cin >> a[i];
  15.  
  16.         vector<int> last(n + 1, -1);
  17.         vector<int> req(n + 1, -1);
  18.  
  19.         for (int i = 0; i < n; ++i) {
  20.             int gap = i - last[a[i]] - 1;
  21.             if (last[a[i]] != -1) {
  22.                 gap = (gap + 1) / 2;
  23.             }
  24.             req[a[i]] = max(gap, req[a[i]]);
  25.             last[a[i]] = i;
  26.         }
  27.  
  28.         int ans = n, who = n;
  29.  
  30.         for (int i = 1; i <= n; ++i) {
  31.             if (last[i] != -1) {
  32.                 req[i] = max(req[i], n - last[i] - 1);
  33.             }
  34.             if (req[i] >= 0 && ans > req[i]) {
  35.                 ans = req[i];
  36.                 who = i;
  37.             }
  38.         }
  39.  
  40.         cout << who << " " << ans << endl;
  41.     }
  42.  
  43.     return 0;
  44. }
  45.  
Advertisement
Add Comment
Please, Sign In to add comment