Skip to content

Commit 74d8d60

Browse files
committed
fix 32-bit
1 parent cedef99 commit 74d8d60

File tree

2 files changed

+11
-7
lines changed

2 files changed

+11
-7
lines changed

src/year2022/day17/day17.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ impl Cave {
123123

124124
/// # Panics
125125
#[must_use]
126-
pub fn solve(data: &str) -> (usize, usize) {
126+
pub fn solve(data: &str) -> (usize, u64) {
127127
let jets: Vec<u8> = data.trim().bytes().collect();
128128

129129
let mut cave = Cave::new();
@@ -162,13 +162,13 @@ pub fn solve(data: &str) -> (usize, usize) {
162162
}
163163

164164
if start != 0 && end != 0 {
165-
let remaining_rocks = 1_000_000_000_000 - start;
166-
let cycle_length = end - start;
165+
let remaining_rocks = 1_000_000_000_000 - u64::try_from(start).unwrap();
166+
let cycle_length = u64::try_from(end - start).unwrap();
167167

168168
let q = remaining_rocks / cycle_length;
169-
let r = remaining_rocks % cycle_length;
169+
let r = usize::try_from(remaining_rocks % cycle_length).unwrap();
170170

171-
part2 = heights[start + r] + q * (heights[end] - heights[start]);
171+
part2 = u64::try_from(heights[start + r]).unwrap() + q * u64::try_from(heights[end] - heights[start]).unwrap();
172172
}
173173

174174
(part1, part2)

src/year2022/day20/day20.rs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,12 @@ impl Puzzle {
4343
}
4444

4545
match shift.0 {
46-
o if o > 0 => q.rotate_left(usize::try_from(o).unwrap() % (nb - 1)),
47-
o if o < 0 => q.rotate_right(usize::try_from(-o).unwrap() % (nb - 1)),
46+
o if o > 0 => q.rotate_left(
47+
usize::try_from(o % i64::try_from(q.len()).unwrap()).unwrap() % (nb - 1),
48+
),
49+
o if o < 0 => q.rotate_right(
50+
usize::try_from((-o) % i64::try_from(q.len()).unwrap()).unwrap() % (nb - 1),
51+
),
4852
_ => (),
4953
}
5054

0 commit comments

Comments
 (0)