Loading...
Submission
# When Author Problem Language CPU Memory
20856 2024-06-12 23:45:16 AHAMMED_99 Find MinMaxXoR Number C++ 14 1105 ms 5080 kb Time Limit Exceeded - 7
Test Cases
# CPU Memory Points
1 1 ms 3296 kb 1 Accepted
2 1 ms 3400 kb 1 Accepted
3 1 ms 3344 kb 1 Accepted
4 2 ms 3444 kb 1 Accepted
5 7 ms 3728 kb 1 Accepted
6 23 ms 5080 kb 1 Accepted
7 1105 ms 656 kb 0 Time Limit Exceeded
8 0 ms 0 kb 0 Skipped
9 0 ms 0 kb 0 Skipped
10 0 ms 0 kb 0 Skipped
11 0 ms 0 kb 0 Skipped
12 0 ms 0 kb 0 Skipped
13 0 ms 0 kb 0 Skipped
14 0 ms 0 kb 0 Skipped
15 0 ms 0 kb 0 Skipped
16 0 ms 0 kb 0 Skipped
Source Code
  1. #include <iostream>
  2. #include <vector>
  3. #include <climits>
  4. #include <algorithm>
  5.  
  6. using namespace std;
  7.  
  8. int calculateMinMaxXoR(const vector<int>& A, int N) {
  9. vector<int> SubXor;
  10.  
  11. // Iterate over all subarrays of length at least 2
  12. for (int i = 0; i < N; ++i) {
  13. int minVal = INT_MAX;
  14. int maxVal = INT_MIN;
  15. for (int j = i; j < N; ++j) {
  16. minVal = min(minVal, A[j]);
  17. maxVal = max(maxVal, A[j]);
  18. if (j - i + 1 >= 2) {
  19. SubXor.push_back(minVal ^ maxVal);
  20. }
  21. }
  22. }
  23.  
  24. // Calculate the final MinMaxXoR
  25. int MinMaxXoR = 0;
  26. for (int value : SubXor) {
  27. MinMaxXoR ^= value;
  28. }
  29.  
  30. return MinMaxXoR;
  31. }
  32.  
  33. int main() {
  34. int N;
  35. cin >> N;
  36. vector<int> A(N);
  37. for (int i = 0; i < N; ++i) {
  38. cin >> A[i];
  39. }
  40.  
  41. int result = calculateMinMaxXoR(A, N);
  42. cout << result << endl;
  43.  
  44. return 0;
  45. }
  46.