1
0

Added Day 6 Part 2

This commit is contained in:
Ishan Jain 2020-12-06 11:03:46 +05:30
parent c2309defe8
commit e55900f904
No known key found for this signature in database
GPG Key ID: F261A0E73038D89D

View File

@ -9,15 +9,22 @@ fn main() {
.filter(|x| !x.is_empty())
.into_iter()
.map(|set| {
let mut q = [false; 26];
let groups: Vec<&str> = set.split('\n').filter(|x| !x.is_empty()).collect();
let mut q = vec![vec![false; groups.len()]; 26];
set.chars()
.filter(|&x| char::is_alphabetic(x))
.for_each(|y| {
q[(y as u8 - 97) as usize] = true;
for (i, group) in groups.into_iter().enumerate() {
group.chars().for_each(|x| {
q[(x as u8 - 97) as usize][i] = true;
});
}
q.iter().fold(0, |a, &x| if x { a + 1 } else { a })
q.into_iter().filter(|x| !x.is_empty()).fold(0, |a, x| {
if x.into_iter().all(|y| y) {
a + 1
} else {
a
}
})
})
.sum::<i32>();