CSES - Autorata
  • Time limit: 1.00 s
  • Memory limit: 512 MB

Teuvo on saanut joululahjaksi autoradan. Se on kuvan 1 mukainen klassinen ovaalirata joka koostuu neljästä kaarre- ja kahdesta suorasta palasta. Tällaisia paloja voi käännellä ja yhdistellä vapaasti, kunhan tuloksena on suljettu kaksikaistainen ratasilmukka. Silmukka ei myöskään voi ylittää itseään, koska radassa ei ole siltojen tekemiseen tarvittavia osia.

Saman ovaaliradan ainainen tahkoaminen alkaa kuitenkin kyllästyttää jopa Teuvoa, joten hän hakee kierrätyskeskuksesta autorataansa uusia paloja. Nyt hän haluaa koota kaikista paloistaan yhden tosi ison autoradan, mutta tarvitsee sen suunnitteluun apua.

Tehtävä

Toteuta sellainen ohjelma, jolle annetaan syötteenä montako uutta palaa Teuvo löysi, ja joka tulostaa jonkin sellaisen radan, jonka Teuvo pystyy nyt rakentamaan. Radasta saa jättää pois korkeintaan yhden kaarre- ja yhden suoran palan, mutta kaikki muut palat on käytettävä.

Jos esimerkiksi Teuvo löysi kuusi uutta kaarrepalaa ja yhden uuden suoran palan, niin hän voisi nyt rakentaa esimerkiksi kuvan 2 mukaisen radan, jossa Teuvolta jäi käyttämättä yksi kolmesta suorasta palasta.

Syöttö

Ohjelmasi lukee oletussyöttöä (standard input). Ensimmäisellä rivillä on uusien kaarrepalojen lukumäärä m. Toisella rivillä on uusien suorapalojen lukumäärä n. Molemmat luvut ovat kokonaislukuja väliltä 1 - 1000000.

Tulostus

Ohjelmasi tulostaa oletustulostukseen (standard output) radan kuvauksen seuraavasti: Aloitetaan radan jostakin palasta radan kiertäminen vastapäivään. Joka palan kohdalla tulostetaan, onko se suora eli s, vasen kaarre eli v, vaiko oikea kaarre eli o. Sitten siirrytään kiertosuunnassa radan seuraavaan palaan, kunnes vihdoin palataan lähtöpalaan, jolloin tulostus loppuu. Voit halutessasi selkeyttää pitkiä tulosteita rivinvaihdoilla.

Yksi tapa tulostaa kuvan 2 rata olisi ovsvsvovvovv. Tämä tapa saadaan lähtemällä kierrokselle nuolen osoittamasta paikasta.