Gegeven is een NumPy-tabel $$a$$ die enkel de gehele getallen 0 en 1 bevat. Gevraagd wordt om alle (rij, kolom)-paren op te sommen waar een sequentie van minstens $$m$$ opeenvolgende 1'en voorkomt. Deze sequentie kan zich zowel horizontaal als verticaal voordoen (maar NIET diagonaal).
Programmeer de functie m_op_rij()
met als argumenten:
Het resultaat is een lijst van tuples, waarbij elk tuple een (rij,kolom)-paar voorstelt waar de gezochte
sequentie start. Indien op een locatie 2 sequenties starten (1 horizontaal en 1 verticaal), dan komt
dit tuple 2 maal in de lijst voor. De volgorde in je resultaatlijst van de tuples is willekeurig (het Dodona-verbeterscript
sorteert je lijst via de ingebouwde sorted()
-functie voor de evaluatie).
t = np.array( [[1, 0, 0, 1, 1], [1, 0, 1, 1, 1], [0, 0, 1, 1, 0], [1, 1, 0, 1, 1], [1, 1, 1, 1, 0]] ) m_op_rij(t, 3) = [(1, 2), (4, 0), (4, 1), (0, 3), (1, 3), (2, 3)] #rijpatroon hier eerst, volgorde mag afwijken !