d10p2
This commit is contained in:
@@ -26,7 +26,7 @@ fn parse_line(line: String) -> Result<Inst, ParseError> {
|
||||
fn main() {
|
||||
let file = File::open(&env::args().nth(1).unwrap()).unwrap();
|
||||
let reader = io::BufReader::new(file);
|
||||
let mut xs: Vec<i64> = vec![0, 1];
|
||||
let mut xs: Vec<i64> = vec![1];
|
||||
|
||||
for line in reader.lines().flatten() {
|
||||
let last_x = *xs.last().unwrap();
|
||||
@@ -36,10 +36,12 @@ fn main() {
|
||||
Err(e) => { eprintln!("error: {:?}", e); process::exit(1) },
|
||||
}
|
||||
}
|
||||
let res: i64 = xs.iter().enumerate()
|
||||
.skip(20).step_by(40)
|
||||
.map(|(i, &x)| (i as i64)*x)
|
||||
.sum();
|
||||
println!("{:?}", res);
|
||||
|
||||
let screen: Vec<_> = xs.iter().enumerate()
|
||||
.map(|(i, &x)| if ((i as i64) % 40 - x).abs() <= 1 { '#' } else { '.' })
|
||||
.collect();
|
||||
for i in 0..6 {
|
||||
println!("{}", screen[(i*40)..((i+1)*40)].iter().collect::<String>());
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user