@@ -21,6 +21,7 @@ mod day10;
2121mod day11;
2222mod day12;
2323mod day13;
24+ mod day14;
2425
2526#[ derive( Parser ) ]
2627struct Args {
@@ -34,12 +35,11 @@ struct Args {
3435 test : bool ,
3536}
3637
37- fn timed < F , R > ( f : F , path : & str , label : & str )
38+ fn timed < F , R > ( f : F , path : & str , label : & str , n : usize )
3839where
3940 F : Fn ( & str ) -> R ,
4041 R : Debug ,
4142{
42- let n = 5 ;
4343 let input = fs:: read_to_string ( path) . unwrap ( ) ;
4444 let start = Instant :: now ( ) ;
4545 for _ in 1 ..n {
4848 let res = f ( & input) ;
4949 let end = Instant :: now ( ) ;
5050 println ! ( "{}: {:?}" , label, res) ;
51- println ! ( "Average: {:.2?}" , ( end - start) / 5 ) ;
51+ println ! ( "Average: {:.2?}" , ( end - start) / n as u32 ) ;
5252}
5353
5454fn call_timed ( fn_and_label : ( Solution , & str ) , base : & str , test : bool ) {
@@ -61,6 +61,7 @@ fn call_timed(fn_and_label: (Solution, &str), base: &str, test: bool) {
6161 if test { "_test" } else { "" }
6262 ) ,
6363 fn_and_label. 1 ,
64+ if test { 1 } else { 5 } ,
6465 ) ;
6566}
6667
@@ -83,6 +84,7 @@ fn main() {
8384 ( day11:: solve, "day11" ) ,
8485 ( day12:: solve, "day12" ) ,
8586 ( day13:: solve, "day13" ) ,
87+ ( day14:: solve, "day14" ) ,
8688 ] ;
8789
8890 // underflow is fine
0 commit comments