Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
"Pawn Brotherhood" solution in Clear category for Pawn Brotherhood by zwerkoff
def safe_pawns(pawns: set) -> int:
safe_pawns = 0
l = ('y', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'z')
for pawn in pawns:
l_guard1 = l[l.index(pawn[0]) - 1]
l_guard2 = l[l.index(pawn[0]) + 1]
d_guards = str(int(pawn[1]) - 1)
guard1 = l_guard1 + d_guards
guard2 = l_guard2 + d_guards
if guard1 in pawns or guard2 in pawns:
safe_pawns += 1
return safe_pawns
if __name__ == '__main__':
safe_pawns({"a1"})
#These "asserts" using only for self-checking and not necessary for auto-testing
assert safe_pawns({"a1","b4", "d4", "f4", "c3", "e3", "g5", "d2"}) == 6
assert safe_pawns({"b4", "c4", "d4", "e4", "f4", "g4", "e5"}) == 1
print("Coding complete? Click 'Check' to review your tests and earn cool rewards!")
July 22, 2020