方法一:直接数组,假装是链表:
use std::io::{self, *};
fn main() {
let stdin = io::stdin();
let mut is_first = 0;
let mut v = String::new();
for line in stdin.lock().lines() {
let ll = line.unwrap();
if is_first == 0 {
is_first += 1;
} else if is_first == 1 {
v = ll;
is_first += 1;
} else if is_first == 2 {
let k = ll.trim().parse::<usize>().unwrap_or(1);
let v_link = v.trim().split(" ").collect::<Vec<&str>>();
if k <= v_link.len() {
println!("{}",v_link[v_link.len()-k]);
}
is_first = 0;
}
if is_first == 0 {
v.clear();
}
}
}
方法二:VecDeque(双端队列)
待补全。。。