AtCoder Beginner Contest 241 A

https://atcoder.jp/contests/abc241/tasks/abc241_a

k -> a[k]という関数を3回適応すればいいので、foldを使えばよいでしょう。

// Digit Machine
#![allow(non_snake_case)]

fn read<T: std::str::FromStr>() -> T {
    let mut line = String::new();
    std::io::stdin().read_line(&mut line).ok();
    line.trim().parse().ok().unwrap()
}

fn read_vec<T: std::str::FromStr>() -> Vec<T> {
    read::<String>().split_whitespace()
            .map(|e| e.parse().ok().unwrap()).collect()
}

fn main() {
    let a = read_vec();
    let d = (0..3).fold(0usize, |x, _| a[x]);
    println!("{}", d)
}