rustgym/leetcode/
_1608_special_array_with_x_elements_greater_than_or_equal_x.rs1struct Solution;
2
3impl Solution {
4 fn special_array(nums: Vec<i32>) -> i32 {
5 let n = nums.len();
6 for i in 0..=n {
7 if i == nums.iter().filter(|&&x| x >= i as i32).count() {
8 return i as i32;
9 }
10 }
11 -1
12 }
13}
14
15#[test]
16fn test() {
17 let nums = vec![3, 5];
18 let res = 2;
19 assert_eq!(Solution::special_array(nums), res);
20 let nums = vec![0, 0];
21 let res = -1;
22 assert_eq!(Solution::special_array(nums), res);
23 let nums = vec![0, 4, 3, 0, 4];
24 let res = 3;
25 assert_eq!(Solution::special_array(nums), res);
26}