code cleanup for part2
This commit is contained in:
parent
d98b679967
commit
2eb8adf620
|
@ -53,24 +53,20 @@ fn intersecting_area(rectangles: &Vec<Rectangle>) -> i32 {
|
||||||
return intersects.values().filter(|i| **i > 1).count() as i32;
|
return intersects.values().filter(|i| **i > 1).count() as i32;
|
||||||
}
|
}
|
||||||
|
|
||||||
fn not_intersecting_claim(rectangles: &Vec<Rectangle>) -> Result<i32, std::io::Error>
|
fn not_intersecting_claim(rectangles: &[Rectangle]) -> Result<i32, &str>
|
||||||
{
|
{
|
||||||
for i in 0..rectangles.len() {
|
'outer:
|
||||||
let mut found = true;
|
for rect1 in rectangles.iter() {
|
||||||
|
for rect2 in rectangles.iter() {
|
||||||
for j in 0..rectangles.len() {
|
if rect1.id != rect2.id && rectangles_intersecting(&rect1, &rect2) {
|
||||||
if rectangles_intersecting(&rectangles[i], &rectangles[j]) && i != j {
|
continue 'outer;
|
||||||
found = false;
|
}
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return Ok(rect1.id.clone());
|
||||||
}
|
}
|
||||||
|
|
||||||
if found {
|
Err("No not intersecting claim found")
|
||||||
return Ok(rectangles[i].id.clone());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return Err(std::io::Error::new(std::io::ErrorKind::Other, "No not intersecting claim found"))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn rectangles_intersecting(r1: &Rectangle, r2: &Rectangle) -> bool {
|
fn rectangles_intersecting(r1: &Rectangle, r2: &Rectangle) -> bool {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user