Welcome to Subscribe On Youtube

1287. Element Appearing More Than 25% In Sorted Array

Description

Given an integer array sorted in non-decreasing order, there is exactly one integer in the array that occurs more than 25% of the time, return that integer.

 

Example 1:

 Input: arr = [1,2,2,6,6,6,6,7,10] Output: 6 

Example 2:

 Input: arr = [1,1] Output: 1 

 

Constraints:

  • 1 <= arr.length <= 104
  • 0 <= arr[i] <= 105

Solutions

  • class Solution { public int findSpecialInteger(int[] arr) { int n = arr.length; for (int i = 0; i < n; ++i) { if (arr[i] == arr[i + (n >> 2)]) { return arr[i]; } } return 0; } } 
  • class Solution { public: int findSpecialInteger(vector<int>& arr) { int n = arr.size(); for (int i = 0; i < n; ++i) if (arr[i] == arr[i + (n >> 2)]) return arr[i]; return 0; } }; 
  • class Solution: def findSpecialInteger(self, arr: List[int]) -> int: n = len(arr) for i, val in enumerate(arr): if val == arr[i + (n >> 2)]: return val return 0 
  • func findSpecialInteger(arr []int) int { n := len(arr) for i, val := range arr { if val == arr[i+(n>>2)] { return val } } return 0 } 
  • /** * @param {number[]} arr * @return {number} */ var findSpecialInteger = function (arr) { const n = arr.length; for (let i = 0; i < n; ++i) { if (arr[i] == arr[i + (n >> 2)]) { return arr[i]; } } return 0; }; 
  • class Solution { /** * @param Integer[] $arr * @return Integer */ function findSpecialInteger($arr) { $len = count($arr); for ($i = 0; $i < $len; $i++) { if ($arr[$i] == $arr[$i + ($len >> 2)]) { return $arr[$i]; } } return -1; } } 
  • function findSpecialInteger(arr: number[]): number { const n = arr.length; for (let i = 0; ; ++i) { if (arr[i] === arr[i + (n >> 2)]) { return arr[i]; } } } 

All Problems

All Solutions