Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
Used Index() method solution in Clear category for Pawn Brotherhood by Sedov
def safe_pawns(pawns):
pawns = list(pawns)
list_letters = ['x','a','b','c','d','e','f','g','h', 'y']
list_numbers = ['0','1', '2', '3','4','5','6','7','8', '9']
# note: needed to add two letters and numbers that do not exist on a chess board to avoid IndexError
result = []
for i in pawns:
if (list_letters[list_letters.index(i[0])-1]+list_numbers[list_numbers.index(i[1])-1]) in pawns:
result.append(i)
elif (list_letters[list_letters.index(i[0])+1]+list_numbers[list_numbers.index(i[1])-1]) in pawns:
result.append(i)
else:
continue
return len(result)
if __name__ == '__main__':
#These "asserts" using only for self-checking and not necessary for auto-testing
assert safe_pawns({"b4", "d4", "f4", "c3", "e3", "g5", "d2"}) == 6
assert safe_pawns({"b4", "c4", "d4", "e4", "f4", "g4", "e5"}) == 1
Aug. 4, 2015