Reduce problem space

This commit is contained in:
Daniel Flanagan 2021-12-17 11:42:47 -06:00
parent 3a8987fa4b
commit 9cf06a535d
Signed by: lytedev
GPG key ID: 5B2020A0F9921EF4

View file

@ -62,14 +62,16 @@ fn trick_shot(r: &Rect) -> (Option<i64>, i64) {
let mut result = None; let mut result = None;
let mut valid_shots = 0; let mut valid_shots = 0;
for x in 1..=r.bottom_right.x { for x in 1..=r.bottom_right.x {
for y in r.bottom_right.y..=2000 { for y in r.bottom_right.y..=-r.bottom_right.y*2 {
println!("Simulating {}, {}", x, y); println!("Simulating {}, {}", x, y);
if let Ok((v, hy)) = simulate_shot(Vec2 { x, y }, r) { if let Ok((v, hy)) = simulate_shot(Vec2 { x, y }, r) {
valid_shots += 1; valid_shots += 1;
if result.is_some() { if result.is_some() {
if hy > result.unwrap() { result = Some(hy); } if hy > result.unwrap() {
println!("!! New Highest Y: {} via {}, {}", hy, x, y);
result = Some(hy);
}
} else { } else {
println!("!! New Highest Y: {} via {}, {}", hy, x, y);
result = Some(hy); result = Some(hy);
} }
} }