1471. The k Strongest Values in an Array Medium

@problem@discussion
#Array#Two Pointers#Sorting



1/**
2 * [1471] The k Strongest Values in an Array
3 *
4 * Given an array of integers arr and an integer k.
5 * A value arr[i] is said to be stronger than a value arr[j] if |arr[i] - m| > |arr[j] - m| where m is the median of the array.<br />
6 * If |arr[i] - m| == |arr[j] - m|, then arr[i] is said to be stronger than arr[j] if arr[i] > arr[j].
7 * Return a list of the strongest k values in the array. return the answer in any arbitrary order.
8 * Median is the middle value in an ordered integer list. More formally, if the length of the list is n, the median is the element in position ((n - 1) / 2) in the sorted list (0-indexed).
9 * 
10 * 	For arr = [6, -3, 7, 2, 11], n = 5 and the median is obtained by sorting the array arr = [-3, 2, 6, 7, 11] and the median is arr[m] where m = ((5 - 1) / 2) = 2. The median is 6.
11 * 	For arr = [-7, 22, 17,&thinsp;3], n = 4 and the median is obtained by sorting the array arr = [-7, 3, 17, 22] and the median is arr[m] where m = ((4 - 1) / 2) = 1. The median is 3.
12 * 
13 *  
14 * Example 1:
15 * 
16 * Input: arr = [1,2,3,4,5], k = 2
17 * Output: [5,1]
18 * Explanation: Median is 3, the elements of the array sorted by the strongest are [5,1,4,2,3]. The strongest 2 elements are [5, 1]. [1, 5] is also accepted answer.
19 * Please note that although |5 - 3| == |1 - 3| but 5 is stronger than 1 because 5 > 1.
20 * 
21 * Example 2:
22 * 
23 * Input: arr = [1,1,3,5,5], k = 2
24 * Output: [5,5]
25 * Explanation: Median is 3, the elements of the array sorted by the strongest are [5,5,1,1,3]. The strongest 2 elements are [5, 5].
26 * 
27 * Example 3:
28 * 
29 * Input: arr = [6,7,11,7,6,8], k = 5
30 * Output: [11,8,6,6,7]
31 * Explanation: Median is 7, the elements of the array sorted by the strongest are [11,8,6,6,7,7].
32 * Any permutation of [11,8,6,6,7] is accepted.
33 * 
34 *  
35 * Constraints:
36 * 
37 * 	1 <= arr.length <= 10^5
38 * 	-10^5 <= arr[i] <= 10^5
39 * 	1 <= k <= arr.length
40 * 
41 */
42pub struct Solution {}
43
44// problem: https://leetcode.com/problems/the-k-strongest-values-in-an-array/
45// discuss: https://leetcode.com/problems/the-k-strongest-values-in-an-array/discuss/?currentPage=1&orderBy=most_votes&query=
46
47// submission codes start here
48
49impl Solution {
50    pub fn get_strongest(arr: Vec<i32>, k: i32) -> Vec<i32> {
51        vec![]
52    }
53}
54
55// submission codes end
56
57#[cfg(test)]
58mod tests {
59    use super::*;
60
61    #[test]
62    fn test_1471() {
63    }
64}
65


Back
© 2025 bowen.ge All Rights Reserved.