mirror of
https://github.com/bertptrs/adventofcode.git
synced 2025-12-25 21:00:31 +01:00
Reduce allocations even more.
This commit is contained in:
@@ -88,17 +88,17 @@ void aoc2019::day16_part2(std::istream &input, std::ostream &output) {
|
||||
}
|
||||
|
||||
numbers = std::vector(numbers.begin() + offset, numbers.end());
|
||||
std::vector<int> new_numbers(numbers.size());
|
||||
|
||||
for (int i = 0; i < 100; ++i) {
|
||||
std::vector<int> partial_sums = partial_sum(numbers);
|
||||
std::vector<int> new_numbers(numbers.size());
|
||||
|
||||
for (int j = 0; j < numbers.size(); ++j) {
|
||||
int n = partial_sums.back() - partial_sums[j] + numbers[j];
|
||||
new_numbers[j] = std::abs(n % 10);
|
||||
}
|
||||
|
||||
numbers = new_numbers;
|
||||
std::swap(numbers, new_numbers);
|
||||
}
|
||||
|
||||
std::copy(numbers.begin(), numbers.begin() + 8, std::ostream_iterator<int>(output));
|
||||
|
||||
Reference in New Issue
Block a user