rayon go brrrr
This commit is contained in:
parent
9a26ae4a4d
commit
7a085154e7
@ -6,6 +6,7 @@ edition = "2021"
|
||||
[dependencies]
|
||||
itertools = "0.10.5"
|
||||
paste = "1.0"
|
||||
rayon = "1.6.0"
|
||||
|
||||
[profile.bench]
|
||||
lto = true
|
||||
|
@ -1,6 +1,7 @@
|
||||
#![feature(test, get_many_mut)]
|
||||
extern crate test;
|
||||
use itertools::Itertools;
|
||||
use rayon::prelude::*;
|
||||
use std::iter::repeat;
|
||||
|
||||
use aoc2022::{boilerplate, common::*};
|
||||
@ -53,7 +54,8 @@ fn part2(parsed: &Parsed) -> usize {
|
||||
let size = parsed.len(); // input is always square
|
||||
let transposed = transpose(parsed);
|
||||
(1..size - 1)
|
||||
.flat_map(|i| repeat(i).zip(1..size - 1))
|
||||
.into_par_iter()
|
||||
.flat_map(|i| rayon::iter::repeat(i).zip(1..size - 1))
|
||||
.map(|(i, j)| {
|
||||
let tree = parsed[i][j];
|
||||
let a = visible_trees(tree, transposed[j][(i + 1)..size].iter());
|
||||
|
Loading…
Reference in New Issue
Block a user