Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Pawn Brotherhood by _Chico_
def safe_pawns(pawns: set) -> int:
pawns = list(pawns)
length = len(pawns)
result = []
for i in range(length):
result.append(0)
start = 0
while start < length:
for j in pawns:
i=pawns[start]
if ord(i[0]) == ord(j[0])-1:
if int(i[1]) == int(j[1])+1:
result[start]=1
elif ord(i[0]) == ord(j[0])+1:
if int(i[1]) == int(j[1])+1:
result[start]=1
start+=1
return sum(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
print("Coding complete? Click 'Check' to review your tests and earn cool rewards!")
May 12, 2021