diff --git a/README.md b/README.md index 743c487..1794f76 100644 --- a/README.md +++ b/README.md @@ -61,5 +61,6 @@ My set of solutions to the problems on Code Forces. - [58A Chat room](https://codeforces.com/problemset/problem/58/A) - [43A Football](https://codeforces.com/problemset/problem/43/A) - [34B Sale](https://codeforces.com/problemset/problem/34/B) +- [25A IQ test](https://codeforces.com/problemset/problem/25/A) - [4A Watermelon](https://codeforces.com/problemset/problem/4/A) - [1A Theatre Square](https://codeforces.com/problemset/problem/1/A) diff --git a/solutions/rust/src/bin/25A.rs b/solutions/rust/src/bin/25A.rs new file mode 100644 index 0000000..b64ca2d --- /dev/null +++ b/solutions/rust/src/bin/25A.rs @@ -0,0 +1,27 @@ +use std::io; + +fn main() { + let mut s = String::new(); + io::stdin().read_line(&mut s).unwrap(); + + let mut s = String::new(); + io::stdin().read_line(&mut s).unwrap(); + let a: Vec = s.split_whitespace().map(|d| d.parse::().unwrap()).collect(); + + let mut evenness = vec![]; + for i in a { + if i % 2 == 0 { + evenness.push(0); + } else { + evenness.push(1); + } + } + + let odds = evenness.iter().filter(|&n| *n == 1).count(); + + if odds == 1 { + println!("{}", evenness.iter().position(|&n| n == 1).unwrap()+1); + } else { + println!("{}", evenness.iter().position(|&n| n == 0).unwrap()+1); + } +}