XLIII, 28. märts 1996. a.

Lõppvooru vanema rühma ülesanded


1. ülesanne. TEKSTITÖÖTLUS ( 20 p. )

Tekstifaili esimesel real on täisarv L (20<=L<=80) . Ülejäänud ridadel on ladina tähtedega kirjutatud tekst. Teksti pikkus on kuni 20 rida, reas kuni 80 sümbolit. Sõnad on eraldatud ühe või enama tühikuga, lausete lõpus on punkt. Lõikude alguses on taandrida mingi arvu sümbolite võrra.

Väljastada tekst sõnu poolitamata ekraanile, võttes rea pikkuseks L ja kasutades võimalikult vähe ridu. Vasak ja parem serv peavad olema joondatud, nagu teevad tekstitöötlusprogrammid, ja sõnade vahed rea piirides võimalikult võrdse pikkusega. Taandrida lõigu algusse jätta 3 täheruumi.

Võib eeldada, et pole sõnu, mis ei mahu reale, ja et tulemus mahub ekraanile. Kui reale mahub ainult üks sõna, siis paigutada ta rea algusse.

Näide.

30
Vanema ruhma voistlejad pidid teise ulesandena koostama
programmi teksti paigutamiseks etteantud
pikkusega ridadele.
    Sealjuures vois tekstis esineda ka kolehirmuspikki
kahekauparealemittemahtuvaid sonu.
   Vanema   ruhma   voistlejad
pidid     teise     ulesandena
koostama    programmi   teksti
paigutamiseks        etteantud
pikkusega ridadele.
   Sealjuures   vois   tekstis
esineda   ka   kolehirmuspikki
kahekauparealemittemahtuvaid
sonu. 

2. ülesanne. RISTKÜLIKUTE PINDALA ( 40 p. )

Tasandile on paigutatud N koordinaattelgedega paralleelsete servadega ristkülikut (N<=100). Iga ristküliku kohta on teada kahe vastasnurga koordinaadid (täisarvud absoluutväärtusega <=10000 ). Leida ristkülikute poolt kaetud pindala.

Tekstifaili esimesel real on arv N , igal järgmisel real tühikutega eraldatuna neli arvu: ühe ristküliku vasaku ülemise ja parema alumise nurga koordinaadid.

Näide .

2
-100 50 0 0
-50 50 10 10

Vastus: 5400


3. ülesanne. VÕRDLUS (40 p.)

Nimetame lihtvõrdlusteks stringe kujul <muutuja><võrdlusmärk><täisarv>, kus võrdlusmärk on =, <, >, <=, >= või <> ; näiteks x=0, y<-12, z<=34, w<>5678.

Vaatleme loogilisi avaldisi, mis on moodustatud lihtvõrdlustest tehtemärkide and ja or ning sulgude abil (tühikuid lubatakse kasutada suvaliselt, ainult mitte arvude sees). Võrdlusmärkide prioriteeti avaldises loeme kõrgemaks kui loogilistel tehetel, tehte and prioriteet on kõrgem kui tehtel or .

Tekstifaili esimesel real on kuni 80 sümboli pikkune loogiline avaldis, kus ainsaks muutujaks on x ja arvud on ülimalt 4-kohalised . Teisel real on tühikutega eraldatuna kuni 10 täisarvu (kuni 4-kohalised ).

Leida teise rea iga arvu jaoks, kas ta rahuldab avaldisega antud tingimust.

Sisendi ja väljundi näide :

(x<20 or x>30) and x>-10
-15 -5 15 25 35
Vastus:
-15 ei
-5 jah
15 jah
25 ei
35 jah