aizu_online_judge/dsl/dsl_3_c.rs
1use competitive::prelude::*;
2
3#[verify::aizu_online_judge("DSL_3_C")]
4pub fn dsl_3_c(reader: impl Read, writer: impl Write) {
5 prepare_io!(reader, writer);
6 sc!(n, q, a: [u64; n], x: [u64; iter q]);
7 for x in x {
8 let mut ans = 0;
9 let mut sum = 0;
10 let mut l = 0;
11 for (r, &b) in a.iter().enumerate() {
12 sum += b;
13 while sum > x {
14 sum -= a[l];
15 l += 1;
16 }
17 ans += r + 1 - l;
18 }
19 pp!(ans);
20 }
21}