esc to dismiss
x

信息

题解

Info

从后向前累加的前缀和

pub fn shifting_letters(s: String, shifts: Vec<i32>) -> String {
    let mut s = s;
    let ss = unsafe { s.as_bytes_mut() };

    let mut sum = 0;
    for i in (0..ss.len()).rev() {
        sum = (sum + shifts[i]) % 26;
        let tmp = (ss[i] - b'a') as i32 + sum;
        ss[i] = (tmp % 26) as u8 + b'a';
    }
    s
}
x