aboutsummaryrefslogtreecommitdiff
path: root/challenge-307/sgreen/python/ch-2.py
diff options
context:
space:
mode:
Diffstat (limited to 'challenge-307/sgreen/python/ch-2.py')
-rwxr-xr-xchallenge-307/sgreen/python/ch-2.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/challenge-307/sgreen/python/ch-2.py b/challenge-307/sgreen/python/ch-2.py
new file mode 100755
index 0000000000..14f80dc96e
--- /dev/null
+++ b/challenge-307/sgreen/python/ch-2.py
@@ -0,0 +1,26 @@
+#!/usr/bin/env python3
+
+import sys
+
+
+def find_anagrams(words: list) -> list:
+ # Sort each word alphabetically, ignoring case
+ sorted_words = [''.join(sorted(word.lower())) for word in words]
+ anagrams = 0
+
+ for idx in range(1, len(words)):
+ if sorted_words[idx-1] == sorted_words[idx]:
+ # The word at this position is an anagram of the previous word
+ anagrams += 1
+
+ # Return the number of words that aren't an anagram
+ return len(words) - anagrams
+
+
+def main():
+ result = find_anagrams(sys.argv[1:])
+ print(result)
+
+
+if __name__ == '__main__':
+ main()