V, 15. aprill 1999. a.

Informaatikaülesanded


Arvuteid püütakse panna mängima lihtsaid ja keerulisi mänge. Vähegi tõsisema mängu korral on “normaalse intelligentsiga” mänguprogrammi kirjutamine muidugi raske ja töömahukas ülesanne. Päris tõsiste mängude jaoks (nagu kabe ja male) alles hakatakse jõudma inimesega võrreldavate tulemusteni. Täisvõimalustega mänguprogramm peab sisaldama osi, mis lahendavad paljusid elementaarseid alamülesandeid. Näiteks tuleb käigu valimiseks kõigepealt kindlaks teha, millised käigud antud seisus üldse reeglite järgi võimalikud on. Selle vooru ülesanded on 64-ruudulise kabe kohta. Mängust endast on nende programmide kirjutamiseks vaja teada, kuidas kivi ja kabe käivad ja löövad, samuti kabelaua algasendit ja väljade tähistusi.


1. Millised kivid saavad käia?

Olgu antud selline kabeseis, kus mõlemal mängijal on ainult kivid ja valgel pole võimalust lüüa. Millised valged kivid saavad teha käigu?

Sisestada kaks rida, kus esimesel on komadega eraldatult valgete kivide asukohad, teisel mustade kivide asukohad (järjestus pole oluline). Vastus väljastada samal viisil. Näiteks:

Sisend:

a1,c1,b2,e3,a5

b6,h6,a7,c7,b8

Vastus:

c1,b2, e3


2. Kas valge saab lüüa kiviga?

Sisestada neli rida, millest esimesel on valgete kivide asukohad, teisel valgete kabede asukohad, kolmandal mustade kivide asukohad ja neljandal mustade kabede asukohad. Kui mingit sorti nuppe ei ole, on vastav rida tühi. Selgitada, kas valge saab järgmisel käigul mõne kiviga lüüa, ja väljastada sellisel juhul nende kivide loend, mis võivad lüüa (meenutame, et 64-ruudulises kabes on löömine küll kohustuslik, aga pole vaja lüüa maksimaalset arvu vastase nuppe). Näide:

Sisend:

a1,c1,b2,a5,e5

h8

b6,d6,h6,a7,b8

Väljund:

a5,e5


3. Kas valge saab lüüa kabega?

Leida samade algandmete korral need valged kabed, mis võivad lüüa vastase nuppe.


4. Kas saab lüüa mitu nuppu?

Leida samade algandmete korral need valged kivid, mis saavad järgmisena teha käigu, millega lüüakse rohkem kui üks must nupp.


Palume saata kõik küsimused aadressil ttkool@ut.ee
Viimati muudetud: 17.04.1999. a.