1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
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()
|