Module c
Expand description
ยงABC 382 C - Kaiten Sushi
refs: https://atcoder.jp/contests/abc382/tasks/abc382_c
use proconio::input;
const INF: usize = 1 << 60;
fn main() {
input! { n: usize, m: usize }
let mut min = INF;
let mut a = vec![(INF, -1)];
for idx in 1..=n {
input! { ai: usize }
if ai < min {
a.push((ai, idx as isize));
min = ai;
}
}
a.push((0, -1));
for _ in 0..m {
input! { bi: usize }
let mut l = 0;
let mut r = a.len() - 1;
while r - l > 1 {
let mid = (l + r) / 2;
if a[mid].0 > bi {
l = mid;
} else {
r = mid;
}
}
println!("{}", a[r].1);
}
}