Gegeven de voorstelling van een schaakbord met één toren en enkele andere schaakstukken. Hoeveel pionnen van het andere kleur kan deze toren dan nemen?

Gevraagd

Schrijf een functie toren(schaakbord) waarbij het schaakbord gegeven wordt als een rooster, waarbij de toren met een "T" en de pionnen van de andere kleur met een "p" worden voorgesteld. Er kunnen zich ook lopers "L" op het bord bevinden. (die bijvoorbeeld de weg naar een pion blokeert.)

Geef het aantal pionnen dat de toren kan nemen.

Bestudeer grondig onderstaande voorbeelden:

Voorbeelden

Schaakbord

Voorbeeld 1.

Schaakbord

Voorbeeld 1.

In deze situatie kan de toren drie pionnen nemen.

>>> toren([[" ", " ", " ", " ", " ", " ", " ", " "],
           [" ", " ", " ", "p", " ", " ", " ", " "],
           [" ", " ", " ", "T", " ", " ", " ", "p"],
           [" ", " ", " ", " ", " ", " ", " ", " "],
           [" ", " ", " ", " ", " ", " ", " ", " "],
           [" ", " ", " ", "p", " ", " ", " ", " "],
           [" ", " ", " ", " ", " ", " ", " ", " "],
           [" ", " ", " ", " ", " ", " ", " ", " "]])
3

Schaakbord

Voorbeeld 2.

Schaakbord

Voorbeeld 2.

In deze situatie kan de toren geen enkele pion nemen. Alle pionnen worden geblokkeerd door een loper.

>>> toren([[" ", " ", " ", " ", " ", " ", " ", " "],
           [" ", " ", " ", "p", " ", " ", " ", " "],
           [" ", " ", "p", "L", "p", " ", " ", " "],
           [" ", "p", "L", "T", "L", "p", " ", " "],
           [" ", " ", "p", "L", "p", " ", " ", " "],
           [" ", " ", " ", "p", " ", " ", " ", " "],
           [" ", " ", " ", " ", " ", " ", " ", " "],
           [" ", " ", " ", " ", " ", " ", " ", " "]])
0

Schaakbord

Voorbeeld 3.

Schaakbord

Voorbeeld 3.

In deze situatie kan de toren drie pionnen nemen. De bovenste pion wordt geblokkeerd door de pion eronder. De laagste pion wordt geblokkeerd door de loper erboven.

>>> toren([[" ", " ", " ", " ", " ", " ", " ", " "],
           [" ", " ", " ", "p", " ", " ", " ", " "],
           [" ", " ", "L", "p", "p", " ", " ", " "],
           ["p", "p", " ", "T", " ", "p", "L", " "],
           [" ", " ", " ", " ", " ", " ", " ", " "],
           [" ", " ", " ", "L", " ", " ", " ", " "],
           [" ", " ", " ", "p", " ", " ", " ", " "],
           [" ", " ", " ", " ", " ", " ", " ", " "]])
3