This commit is contained in:
2016-12-06 10:33:54 +01:00
parent a93c2ec7f8
commit 5eee81e7b8
5 changed files with 695 additions and 0 deletions

45
2016/06/src/main.rs Normal file
View File

@@ -0,0 +1,45 @@
use std::io::{self, BufRead};
use std::collections::HashMap;
fn main() {
let stdin = io::stdin();
let lines = stdin.lock().lines()
.filter_map(|x| x.ok())
.collect::<Vec<_>>();
let mut count: Vec<HashMap<char, u16>> = vec![HashMap::new(); 1024];
for line in lines {
for (i, ch) in line.chars().enumerate() {
*count[i].entry(ch).or_insert(0) += 1;
}
}
let corrected_most: String = count.iter()
.filter_map(|x| {
let mut vec: Vec<_> = x.iter().collect();
vec.sort_by_key(|k| k.1);
vec.pop()
})
.map(|x| *x.0)
.collect();
let corrected_least: String = count.iter()
.filter_map(|x| {
let mut vec: Vec<_> = x.iter().collect();
vec.sort_by_key(|k| k.1);
vec.reverse();
vec.pop()
})
.map(|x| *x.0)
.collect();
println!("corrected_most={}", corrected_most);
println!("corrected_least={}", corrected_least);
}