Leo heeft een nieuwe methode uitgevonden voor het versleutelen van afbeeldingen met behulp van de bewerkingen H (horizontaal) en V (verticaal). Een afbeelding is in principe een rooster met rijen en kolommen van vierkante cellen die pixels worden genoemd, waarbij elke pixel een kleur opslaat.

In elke toepassing van de H-bewerking:

Wanneer pixels in een rij voorbij de rechterrand van de afbeelding worden geschoven, worden ze op volgorde gehouden en als een groep verplaatst naar de beschikbare ruimte aan de linkerkant van de rij. Hier is een voorbeeld van een afbeelding van 3 × 3 met kleuren gelabeld van 1 tot 9:

H-bewerking toegepast op een rooster.

H-bewerking toegepast op een rooster.

H-bewerking toegepast op een rooster.

H-bewerking toegepast op een rooster.

Net zo, in elke toepassing van de V-bewerking:

V-bewerking toegepast op een rooster.

V-bewerking toegepast op een rooster.

V-bewerking toegepast op een rooster.

V-bewerking toegepast op een rooster.

Hier is hoe de reeks HVHV kan worden gebruikt om een 25 × 25 afbeelding van de Mona Lisa te versleutelen:

HVHV toegepast op de Mona Lisa.

HVHV toegepast op de Mona Lisa.

HVHV toegepast op de Mona Lisa.

HVHV toegepast op de Mona Lisa.

Gevraagd

Bestudeer zorgvuldig onderstaande voorbeelden.

Voorbeelden

>>> versleutel([[1, 2, 3],
                [4, 5, 6],
                [7, 8, 9]])
[[1, 3, 2],
 [7, 9, 8],
 [4, 6, 5]]

De hulpfuncties hebben het volgende effect:

>>> H([[1, 2, 3],
       [4, 5, 6],
       [7, 8, 9]])
[[1, 2, 3],
 [6, 4, 5],
 [8, 9, 7]]
>>> V([[1, 2, 3],
       [6, 4, 5],
       [8, 9, 7]])
[[1, 9, 5],
 [6, 2, 7],
 [8, 4, 3]]

Bron

Gebaseerd op probleem Verborgen prent, Bebras 2024 (Padawan).