aboutsummaryrefslogtreecommitdiff
path: root/longest_subseq_lim_sum.rs
blob: 037b606027ce864d86e71fb5fb71b7890b137578 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
struct Solution;

impl Solution {
    pub fn answer_queries(mut nums: Vec<i32>, queries: Vec<i32>) -> Vec<i32> {
        nums.sort_unstable();
        nums.iter_mut().fold(0, |acc, x| { *x += acc; *x});
        queries.iter().map(|x|
            nums.binary_search(x).unwrap_or_else(|i| i - 1) as i32 + 1
        ).collect()
    }
}

fn main() {
    let nums = vec![4,5,2,1];
    let queries = vec![3,10,21];
    print!("{:?}", Solution::answer_queries(nums, queries));
}