fn main() { let stdin = std::io::read_to_string(std::io::stdin()).unwrap(); let mut stdin = stdin.split_ascii_whitespace(); let n: u8 = stdin.next().unwrap().parse().unwrap(); let m: usize = stdin.next().unwrap().parse().unwrap(); let a: Vec = (0..m) .map(|_| stdin.next().unwrap().parse().unwrap()) .collect(); println!("{}", output(solve(n, a))); } fn solve(n: u8, a: Vec) -> u8 { let mut cards = (1..=n).collect::>(); a.into_iter().for_each(|a| { let c = cards .drain(((a - 1) as usize)..=((a - 1) as usize)) .next() .unwrap(); cards.push_front(c); }); *cards.front().unwrap() } fn output(ans: u8) -> u8 { ans }