CSES - Datatähti 2019 loppu - Robotti
  • Time limit: 1.00 s
  • Memory limit: 512 MB

Tehtäväsi on suunnitella robottia varten n \times m -ruudukko, jonka jokainen ruutu on punainen, vihreä tai sininen. Molemmat luvut n ja m ovat parillisia.

Robotti aloittaa ruudukon vasemmasta ylänurkasta ja katsoo kohti ruudukon oikeaa reunaa. Jokaisella vuorolla robotti toimii näin:

  1. Liiku yksi ruutu eteenpäin.
  2. Jos nykyisen ruudun väri on eri kuin edellisen ruudun väri, käänny 90 astetta oikealle.
  3. Vaihda edellisen ruudun väriä: punaisesta tulee vihreä, vihreästä sininen ja sinisestä punainen.

Sinun tulee suunnitella väritys niin, että robotti käy jokaisessa ruudussa ja palaa sen jälkeen lähtöruutuun. Robotti saa käydä samassa ruudussa useamman kerran.

Robotti ei saa mennä missään vaiheessa ruudukon ulkopuolelle, ja se saa käyttää enintään 10^6 vuoroa tehtäväänsä.

Syöte

Syötteen ainoalla rivillä on kaksi parillista kokonaislukua n ja m.

Tuloste

Tulosta n riviä, joista jokaisella on m merkkiä: ruudukon väritys. Värit ovat punainen (R), vihreä (G) ja sininen (B).

Jos mitään ratkaisua ei ole olemassa, tulosta vain teksti IMPOSSIBLE.

Esimerkki

Syöte:

2 4

Tuloste:

RRRB
BGGG

Osatehtävä 1 (12 pistettä)

  • n = 2
  • 2 \le m \le 100

Osatehtävä 2 (32 pistettä)

  • 2 \le n,m \le 6

Osatehtävä 3 (56 pistettä)

  • 2 \le n,m \le 100