From 4073f69c841994067e67d8b9aafb5d32ae7ec6df Mon Sep 17 00:00:00 2001 From: Ishan Jain Date: Wed, 7 Dec 2022 17:52:55 +0530 Subject: [PATCH] Optimized integer parsing in day 7 part 2 --- .gitignore | 2 +- src/main.rs | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 913a1e0..dc7cec3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ /target go.mod go.sum -test.go +*.go test diff --git a/src/main.rs b/src/main.rs index 45368ba..eb062b8 100644 --- a/src/main.rs +++ b/src/main.rs @@ -48,8 +48,10 @@ fn solution(input: impl Iterator) -> u32 { }, _ => { - let (size, _) = line.split_once(' ').unwrap(); - let size = size.parse::().unwrap(); + let size = line + .bytes() + .take_while(|&c| c != b' ') + .fold(0u32, |a, x| a * 10 + (x - b'0') as u32); current_folder_size += size; } }