Skip to content

Commit 6f740b7

Browse files
committed
Remove redundant check
1 parent 3bf0137 commit 6f740b7

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

16.swift

+4-6
Original file line numberDiff line numberDiff line change
@@ -53,15 +53,13 @@ func energized(by beam: Beam) -> Int {
5353
}
5454

5555
func trace(beam: Beam, visited: inout Set<Beam>) {
56-
if visited.contains(beam) {
57-
return
58-
}
59-
6056
var (beam, bt) = (beam, beam)
6157
var next: [Beam] = []
6258

6359
while isInBounds(beam) {
64-
visited.insert(beam)
60+
if !visited.insert(beam).inserted {
61+
break
62+
}
6563

6664
switch item(at: beam) {
6765
case .vbar where beam.isHorizontal:
@@ -89,7 +87,7 @@ func trace(beam: Beam, visited: inout Set<Beam>) {
8987
}
9088
}
9189

92-
next.filter(isInBounds).forEach { trace(beam: $0, visited: &visited) }
90+
next.forEach { trace(beam: $0, visited: &visited) }
9391
}
9492

9593
func isInBounds(_ beam: Beam) -> Bool {

0 commit comments

Comments
 (0)