in contests/arc007/arc007_2.rs [16:66]
fn solve(src: &str) -> String {
let source = AutoSource::from(src);
input! {
from source,
N: usize,
M: usize,
listen_order: [u64; M]
}
let mut cases: Vec<u64> = vec![];
for i in 0..N + 1 {
cases.push(i as u64);
}
for l in listen_order {
if l == cases[0] {
continue;
}
let mut key = 0;
let mut i = 0;
for case in cases.clone() {
if case == l {
key = i;
break;
}
i += 1;
}
let tmp_now_listen = cases[key];
cases[key] = cases[0];
cases[0] = tmp_now_listen;
}
let mut answer = String::new();
let mut is_first = true;
for case in cases {
if is_first {
is_first = false;
continue;
}
if answer.len() == 0 {
answer = format!("{}", case);
} else {
answer = format!("{}\n{}", answer, case)
}
}
answer.to_string()
}