Skip to content

Commit 7bc97d8

Browse files
author
Gonzalo Diaz
committed
[Hacker Rank] Interview Preparation Kit: Miscellaneous: Maximum Xor. Introducing a dictionary as a cache.
1 parent 3c3d114 commit 7bc97d8

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

src/hackerrank/interview_preparation_kit/miscellaneous/maximum_xor.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,18 @@
33
# pylint: enable=line-too-long
44

55
def maxXor(arr: list[int], queries: list[int]) -> list[int]:
6+
max_dict: dict[int, int] = {}
67
result = []
78

89
for j in queries:
9-
maximum = 0
10-
for x in arr:
11-
maximum = max(maximum, j ^ x)
12-
result.append(maximum)
10+
11+
if j in max_dict:
12+
result.append(max_dict[j])
13+
else:
14+
maximum: int = 0
15+
for x in arr:
16+
maximum = max(maximum, j ^ x)
17+
max_dict[j] = maximum
18+
result.append(maximum)
1319

1420
return result

0 commit comments

Comments
 (0)