aboutsummaryrefslogtreecommitdiff
path: root/challenge-077/roger-bell-west/python/ch-2.py
diff options
context:
space:
mode:
Diffstat (limited to 'challenge-077/roger-bell-west/python/ch-2.py')
-rwxr-xr-xchallenge-077/roger-bell-west/python/ch-2.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/challenge-077/roger-bell-west/python/ch-2.py b/challenge-077/roger-bell-west/python/ch-2.py
new file mode 100755
index 0000000000..d5ad3c7cab
--- /dev/null
+++ b/challenge-077/roger-bell-west/python/ch-2.py
@@ -0,0 +1,33 @@
+#! /usr/bin/python3
+
+import unittest
+
+def nx(n):
+ mr=len(n)-1
+ mc=len(n[0])-1
+ isol=0
+ for r in (range(0,mr+1)):
+ for c in (range(0,mc+1)):
+ if n[r][c] != 'X':
+ continue
+ isolated=1
+ for dr in (-1,0,1):
+ if (r+dr >= 0 and r+dr <= mr):
+ for dc in (-1,0,1):
+ if ((dc != 0 or dr != 0) and c+dc >= 0 and c+dc <= mc):
+ if n[r+dr][c+dc] == 'X':
+ isolated=0
+ break
+ if (isolated):
+ isol += 1
+ return isol
+
+class TestMajority(unittest.TestCase):
+
+ def test_ex1(self):
+ self.assertEqual(nx(('O O X'.split(),'X O O'.split(),'X O O'.split())),1,'example 1')
+
+ def test_ex2(self):
+ self.assertEqual(nx(('O O X O'.split(),'X O O O'.split(),'X O O X'.split(),'O X O O'.split())),2,'example 2')
+
+unittest.main()