LATVIJAS REPUBLIKAS 13.INFORMĀTIKAS OLIMPIĀDES II POSMA UZDEVUMI 

JAUNĀKĀ (7.-9. klašu) GRUPA

1.“BURTU KLUCĪŠI”

    Rotai ir klucīši ar burtu attēliem. Uz katra klucīša ir uzzīmēts viens latīņu alfabēta lielais burts. Uz vairākiem klucīšiem var būt uzzīmēts viens un tas pats burts. Rota no saviem klucīšiem, saliekot tos rindā vienu aiz otra, ir izveidojusi kādu vārdu. Rotas draugs Zigmārs arī vēlētos salikt kādu vārdu, diemžēl viņam nav šādu klucīšu. Rota ir ar mieru aizdot tikai tos klucīšus, no kuriem ir salikts viņas iedomātais vārds, un nevienu vairāk.

    Uzrakstiet programmu, kas ievadītiem Rotas saliktā un Zigmāra iedomātajiem vārdiem nosaka, vai Zigmārs no dotajiem klucīšiem varēs salikt savu iedomāto vārdu.

Ievaddati
    Teksta faila BURTI.DAT pirmajā rindā ir dota simbolu virkne - Rotas saliktais vārds. Faila otrajā rindā ir dota simbolu virkne - Zigmāra iedomātais vārds. Katrā virknē ir tikai latīņu alfabēta lielie burti. Katrā virknē ir vismaz viens un ne vairāk kā 250 simboli.

Izvaddati
   Teksta faila BURTI.REZ pirmajā rindā izvadiet vārdu VAR , ja Zigmārs no dotajiem klucīšiem var salikt savu iedomāto vārdu vai NEVAR , ja to izdarīt nav iespējams.

Piemēri
Ievaddati (BURTI.DAT)             Izvaddati (BURTI.REZ)
ALEKSANDRS                         VAR
SANDRA

Ievaddati (BURTI.DAT)             Izvaddati (BURTI.REZ)
SALMS                                      NEVAR
MALAS



  2.“TUVĀKAIS SKAITLIS”
    Ievadītam naturālam skaitlim n un ciparam c atrast tādu mazāko naturālo skaitli k, kuram vienlaicīgi izpildās sekojošas īpašības:
1)k>n
2)k pieraksts satur ciparu c.

  Ievaddati
    Teksta faila SKAITLIS.DAT pirmajā rindā ir dotas naturāla skaitļa n un cipara c vērtības, kas atdalītas ar tukšumsimbolu. Zināms, ka 0<n<32750.

  Izvaddati
    Teksta faila SKAITLIS.REZ pirmajā rindā izvadiet skaitļa k vērtību.

  Piemēri
Ievaddati (SKAITLIS.DAT)         Izvaddati (SKAITLIS.REZ)
11 7                                             17

Ievaddati (SKAITLIS.DAT)         Izvaddati (SKAITLIS.REZ)
19992 2                                       20000



3.“MĀRCIŅAS, ŠILIŅI UN PENSI”
      Kādā valstī līdz nesenam laikam apgrozībā esošās naudas vienības bija mārciņas, šiliņi un pensi. Šīs naudas vienības savā starpā saistīja sekojošas sakarības: 1 mārciņa = 20 šiliņi, 1 šiliņš = 12 pensi. Tā kā šāda naudas sistēma bija grūti saskaņojama ar citu valstu naudas sistēmām, tad tika nolemts pāriet uz jaunu sistēmu, kurā būtu tikai mārciņas un pensi (sauksim tos par jaunajām mārciņām un jaunajiem pensiem), pie kam būtu spēkā sakarība 1 jaunā mārciņa = 100 jaunie pensi. Tika nolemts, ka pensam sava vērtība jāsaglabā (1 jaunais penss = 1 penss).     Uzrakstiet programmu, kas ievadītai naudas summai vecajā sistēmā aprēķina atbilstošu naudas summu jaunajā sistēmā.

Ievaddati
Teksta faila NAUDA.DAT pirmajā rindā dotas trīs nenegatīvu veselu skaitļu n1, n2 un n3 vērtības, kas attiecīgi apzīmē kādas naudas summas mārciņu, šiliņu un pensu skaitu vecajā naudas skaitīšanas sistēmā. Zināms, ka dotās naudas daudzums nepārsniedza 100 "vecās" mārciņas. Starp katriem diviem blakus skaitļiem ir viens tukšumsimbols.

Izvaddati
Teksta faila NAUDA.REZ pirmajā rindā jāizvada ievadītā naudas summa jaunajā naudas skaitīšanas sistēmā kā divi veseli skaitļi - jauno mārciņu un jauno pensu skaits. Skaitļiem jābūt atdalītiem ar tukšumsimbolu. Summa jāpārveido tā, lai jauno pensu skaits būtu robežās no 0 līdz 99.

Piemērs
Ievaddati (NAUDA.DAT)     Izvaddati (NAUDA.REZ)
3 100 1000                           29 20

Ievaddati (NAUDA.DAT)    Izvaddati (NAUDA.REZ)
0 0 24000                             240 0


VECĀKĀ (10.-12. klašu) GRUPA

1.“TAISNSTŪRA PĀRSVĪTROŠANA”
 
Kādu dienu Andris izdomāja spēli. Lai to iesāktu, viņš vispirms uz papīra lapas uzzīmēja divus paralēlu vertikālus un divus paralēlus horizontālus nogriežņus, tādējādi izveidojot taisnstūri kā parādīts zīmējumā.

    Pēc tam viņš sāka vilkt nākamos taisnes nogriežņus sadalot sākumā izveidojušos taisnstūri mazākos taisnstūros. Vispirms viņš novilka vertikālu nogriezni tieši pa vidu diviem vertikālajiem nogriežņiem, pēc tam tāpat viņš novilka horizontālu nogriezni tieši pa vidu diviem jau novilktajiem horizontālajiem nogriežņiem.     Nākamos nogriežņus Andris vilka vispirms novelkot visus vertikālos nogriežņus tieši pa vidu jau novilktajiem vertikālajiem nogriežņiem, pēc tam – velkot horizontālus nogriežņus tieši pa vidu jau novilktajiem horizontālajiem nogriežņiem. Visi novilktie nogriežņi bija tik gari, ka šķērsoja visus otrā virzienā novilktos nogriežņus.
    Tādējādi Andris turpināja vilkt taisnes nogriežņus, kamēr bija novilkti tieši n taisnes nogriežņi.
   Uzrakstiet programmu, kas ievadītai n vērtībai nosaka, cik taisnstūrīšos beigās būs sadalījies sākumā uzzīmētais taisnstūris!

Ievaddati
   Teksta faila TAISNST.DAT pirmajā rindā ir dota naturāla skaitļa n vērtība- kopējais novilkto taišņu skaits (0<n<=90000).

Izvaddati
   Teksta faila TAISNST.REZ pirmajā rindā jāizvada viens naturāls skaitlis - mazo taisnstūru, kādos sadalīts sākotnējais taisnstūris, skaits.
 
Piemērs
Ievaddati (TAISNST.DAT)

Izvaddati (TAISNST.REZ) 
28

Piezīme: Numurs pie nogriežņa nozīmē, kurš pēc kārtas šis nogrieznis tika novilkts. 


2.“LABI SAKĀRTOTIE SKAITĻI”

Par labi sakārtotu sauksim tādu n-ciparu nenegatīvu veselu skaitli a = anan-1...a2a1, kura cipariem ir spēkā sekojoša sakarība: an >=an-1>=...>=a2 >=a1 Ievadītai n vērtībai noteikt, cik pavisam ir n ciparu labi sakārtoti skaitļi.

Ievaddati
Teksta faila LABI.DAT pirmajā rindā dota naturāla skaitļa n (0<n<41) vērtība.

Izvaddati
Teksta faila LABI.REZ pirmajā rindā jāizvada viens naturāls skaitlis - n ciparu labi sakārtoto skaitļu skaits.

Piemērs
Ievaddati (fails LABI.DAT)    Izvaddati ( fails LABI.REZ)
2                                            54

Piezīme: Šie skaitļi ir: 10,11,20,21,22,30,31,32,33,40,41,42,43,44, 50,51,52,53,54,55,60,61,62,63,64,65,66,70,71,72,73,74,75,76, 77,80,81,82,83,84,85,86,87,88,90,91,92,93,94,95,96,97,98,99.


3.“ŠIFROGRAMMA DŽEIMSAM BONDAM”
 
Slavenajam aģentam 007 (Džeimsam Bondam) bija kāda literatūrā neaprakstīta rakstura iezīme. Ja viņš saņēma šifrogrammu, kas saturēja ciparu virkni un tajā kā pēc kārtas sekojošu ciparu virkne bija atrodams kāda naturāla skaitļa n (1<n<=10000) kvadrāts, tad Dž.Bonds kļuva nervozs, kas uz kādu laiku pazemināja viņa darbaspējas. Lai izvairītos no šādiem efektiem, Viņa Karaliskās Augstības šifrēšanas dienesta vadītājs Mr X ieteica rīkoties šādi – Džeimsam Bondam paredzētajā šifrogrammā atrast tādu naturāla skaitļa kvadrātu n2 (kur n – naturāls skaitlis iepriekš aprakstītajās robežās), kura pieraksts šifrogrammā sākas visvairāk pa kreisi un aizvietot to ar skaitļa n pierakstu. Ja vienā šifrogrammas vietā sākas vairāku kvadrātu pieraksts, tad aizvietot īsāko no tiem. Kvadrāta pieraksts nesākas ar 0. Pēc tam atkārtot šo darbību ar jauniegūto šifrogrammu un tā turpināt tik ilgi, kamēr iegūtajā šifrogrammā nav neviena skaitļa no minētā intervāla kvadrāta.
    Uzrakstiet datorprogrammu, kas realizē Mr X piedāvāto algoritmu!

Ievaddati
    Ievaddatu faila BONDS.DAT pirmajā rindā dota ciparu virkne bez atdalošiem tukšumsimboliem – šifrogrammas sākotnējais saturs. Zināms, ka ciparu virknē ir vismaz 1 un ne vairāk kā 250 cipari. Virknes pirmais cipars nav 0.

Izvaddati
    Izvaddatu failam BONDS.REZ jāsatur tikai viena rinda un tajā jābūt ciparu virknei – pārveidotās šifrogrammas tekstam.

Piemēri
Ievaddati (BONDS.DAT)    Izvaddati (BONDS.REZ)
734424                                268

Piezīme: Pārveidošana notika šādi: 734424 -> 732424 -> 71824 -> 268

Ievaddati (BONDS.DAT)    Izvaddati (BONDS.REZ)
8136045                              605 


Mājup  Uz uzdevumu un testu arhīvu