20250419 finished.
This commit is contained in:
parent
ea3dd25297
commit
22d2deb7f8
|
@ -607,3 +607,5 @@ mod p2537_count_the_number_of_good_subarrays;
|
|||
mod p2176_count_equal_and_divisible_pairs_in_an_array;
|
||||
|
||||
mod p2364_count_number_of_bad_pairs;
|
||||
|
||||
mod p2563_count_the_number_of_fair_pairs;
|
||||
|
|
35
src/problem/p2563_count_the_number_of_fair_pairs.rs
Normal file
35
src/problem/p2563_count_the_number_of_fair_pairs.rs
Normal file
|
@ -0,0 +1,35 @@
|
|||
/**
|
||||
* [2563] Count the Number of Fair Pairs
|
||||
*/
|
||||
pub struct Solution {}
|
||||
|
||||
// submission codes start here
|
||||
|
||||
impl Solution {
|
||||
pub fn count_fair_pairs(mut nums: Vec<i32>, lower: i32, upper: i32) -> i64 {
|
||||
nums.sort_unstable();
|
||||
let mut result = 0;
|
||||
|
||||
for i in 0..nums.len() {
|
||||
let l = nums[0..i].partition_point(|&x| x + nums[i] < lower);
|
||||
let r = nums[0..i].partition_point(|&x| x + nums[i] <= upper);
|
||||
|
||||
result += (r - l);
|
||||
}
|
||||
|
||||
result as i64
|
||||
}
|
||||
}
|
||||
|
||||
// submission codes end
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
|
||||
#[test]
|
||||
fn test_2563() {
|
||||
assert_eq!(6, Solution::count_fair_pairs(vec![0, 1, 7, 4, 4, 5], 3, 6));
|
||||
assert_eq!(1, Solution::count_fair_pairs(vec![1, 7, 9, 2, 5], 11, 11));
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user