aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-208/conor-hoekstra/ch-02.bqn4
-rw-r--r--challenge-208/conor-hoekstra/ch-02.py9
2 files changed, 13 insertions, 0 deletions
diff --git a/challenge-208/conor-hoekstra/ch-02.bqn b/challenge-208/conor-hoekstra/ch-02.bqn
new file mode 100644
index 0000000000..4913670e2e
--- /dev/null
+++ b/challenge-208/conor-hoekstra/ch-02.bqn
@@ -0,0 +1,4 @@
+FindDuplicate ← {¯1⌈´1+/2=+˝𝕩=⌜1+↕≠𝕩}
+
+# Tests
+FindDuplicate ¨ ⟨1,2,2,4⟩‿⟨1,2,3,4⟩‿⟨1,2,3,3⟩ # ⟨ 1 ¯1 2 ⟩
diff --git a/challenge-208/conor-hoekstra/ch-02.py b/challenge-208/conor-hoekstra/ch-02.py
new file mode 100644
index 0000000000..fdc6510062
--- /dev/null
+++ b/challenge-208/conor-hoekstra/ch-02.py
@@ -0,0 +1,9 @@
+
+from collections import Counter, defaultdict
+
+def find_duplicate(nums):
+ return defaultdict(lambda:-1, map(reversed, Counter(nums).items()))[2]
+
+print(find_duplicate([1,2,2,4])) # 2
+print(find_duplicate([1,2,3,4])) # -1
+print(find_duplicate([1,2,3,3])) # 3