File tree Expand file tree Collapse file tree 2 files changed +9
-4
lines changed Expand file tree Collapse file tree 2 files changed +9
-4
lines changed Original file line number Diff line number Diff line change @@ -17,9 +17,9 @@ Solutions for [Advent of Code](https://adventofcode.com/) in [Rust](https://www.
17
17
| [ Day 4] ( ./src/bin/04.rs ) | ` 810.2µs ` | ` 298.7µs ` |
18
18
| [ Day 5] ( ./src/bin/05.rs ) | ` 67.7µs ` | ` 184.5µs ` |
19
19
| [ Day 6] ( ./src/bin/06.rs ) | ` 71.1µs ` | ` 24.8ms ` |
20
- | [ Day 7] ( ./src/bin/07.rs ) | ` 2.2ms ` | ` 130.7ms ` |
20
+ | [ Day 7] ( ./src/bin/07.rs ) | ` 2.2ms ` | ` 54.4ms ` |
21
21
22
- ** Total: 161.18ms **
22
+ ** Total: 84.88ms **
23
23
<!-- - benchmarking table --->
24
24
25
25
---
Original file line number Diff line number Diff line change @@ -54,8 +54,13 @@ impl EquationData {
54
54
Op :: Add => current_value + next_value,
55
55
Op :: Mul => current_value * next_value,
56
56
Op :: Concat => {
57
- let char_count = next_value. to_string ( ) . len ( ) as u32 ;
58
- current_value * 10_u64 . pow ( char_count) + next_value
57
+ let mut digit_count = 0 ;
58
+ let mut n = next_value;
59
+ while n > 0 {
60
+ digit_count += 1 ;
61
+ n /= 10 ;
62
+ }
63
+ current_value * 10_u64 . pow ( digit_count) + next_value
59
64
}
60
65
} ;
61
66
You can’t perform that action at this time.
0 commit comments