diff --git a/src/intcode.rs b/src/intcode.rs index 7befcc2..0138e5f 100644 --- a/src/intcode.rs +++ b/src/intcode.rs @@ -272,9 +272,8 @@ impl Computer { Mode::Immediate => want, Mode::Relative => (self.rel + self.get_pos(want)) as usize, }; - if length < want { - let missing = (want - length) + 10000; - self.program.extend_from_slice(&vec![0; missing]) + if length <= want { + self.program.resize(want + 1, 0); } self.program[want] = value; }