
Kvadrātveida putekļsūcējs

Stāsts
Krišjānis ir uzkonstruējis kvadrātveida putekļsūcēju (saīsināti – KP), kas ir neaizstājams palīgs viņa darbnīcas uzkopšanā. KP atmiņā darbnīcas grīda tiek attēlota kā rūtiņu laukums, kurā pats KP aizņem rūtiņas. Laukumā dažas rūtiņas var būt bīstamas (netērēsim laiku, mēģinot noskaidrot, ko tieši tas nozīmē), un KP nekad nedrīkst nonākt situācijā, ka KP atrašanās vietā vairāk nekā puse tā noklāto rūtiņu ir bīstamas. Ir zināma KP sākotnējā atrašanās vieta un īpaša rūtiņa, kura noteikti jāuzkopj, t.i., KP jāuzbrauc uz tās. Vienā solī KP var pārvietoties par vienu rūtiņu horizontālā vai vertikālā virzienā, neizejot no laukuma robežām. Nepieciešams noteikt, ar kādu mazāko soļu skaitu KP var nonākt situācijā, ka tas uzkopj īpašo rūtiņu.
Piemēram, 1. attēlā parādītajā kartē , , ar „A“ apzīmēta KP sākotnējās atrašanās vietas kreisā augšējā rūtiņa, bet ar „B“ – īpašā rūtiņa. Bīstamās rūtiņas apzīmētas ar „X“.

Šajā gadījumā īpašo rūtiņu iespējams uzkopt ātrākais 10 soļos, veicot 2. attēlā parādīto maršrutu.
Uzrakstiet datorprogrammu, kas dotam laukuma aprakstam nosaka, ar kādu mazāko soļu skaitu KP no sākuma pozīcijas var nonākt līdz īpašās rūtiņas uzkopšanai!
Ievaddati
Ievaddatu pirmajā rindā dotas trīs naturālu skaitļu – laukuma rindu skaits , laukuma kolonnu skaits un KP malas garums rūtiņās . Tiek garantēts, ka . Starp katriem diviem blakus skaitļiem ievaddatos ir tukšumzīme.
Nākamajās ievaddatu rindās dots laukuma apraksts. Katrā rindā ir tieši simboli un katram un simbols ievaddatu -ās rindas -tajā kolonnā atbilst laukuma -tās rindas -tās kolonnas rūtiņas saturam un var būt:
.
- parasta rūtiņaX
- bīstama rūtiņaA
- KP sākuma atrašanās vietas kreisā augšējā stūra rūtiņa. Šī vienmēr ir parasta rūtiņa un uzdota korekti – t.i., KP pilnībā ietilpst laukumā.B
- īpašā rūtiņa. Šī vienmēr ir parasta rūtiņa.
Izvaddati
Izvaddatu vienīgajā rindā jābūt veselam skaitlim – mazākajam soļu skaitam, kas ļauj no sākuma pozīcijas nonākt līdz īpašās rūtiņas uzkopšanai, vai -1, ja derīgs maršruts neeksistē. Īpašā rūtiņa ir uzkopta tad, ja KP nonāk pozīcijā, kur tas noklāj īpašo rūtiņu. Ievērojiet, ka nekādi nav noteikts, kurai KP rūtiņai uzkopšanas brīdī jāatbilst īpašajai rūtiņai!
Piemēri
Ievaddati
5 9 3
A....X..B
..X..X.X.
.XXX.XX..
X.X.X..X.
...XX....
Izvaddati
10
Izpildes resursu ierobežojumi
Apakšuzdevumi un to vērtēšana
# | Apraksts un ierobežojumi | Punkti |
---|---|---|
1. | Uzdevuma tekstā dotie trīs piemēri | 3 |
2. | 48 | |
3. | un | 28 |
4. | Bez papildu ierobežojumiem | 21 |
1. apakšuzdevuma ievaddati
5 5 3
A.X..
X.B.X
....X
XX...
X.XXX
6 3 1
...
XA.
.X.
X..
B..
...
6 4 2
X...
.AXX
X..X
.X.X
XXXX
X.BX

Kvadrātveida putekļsūcējs

Stāsts
Krišjānis ir uzkonstruējis kvadrātveida putekļsūcēju (saīsināti – KP), kas ir neaizstājams palīgs viņa darbnīcas uzkopšanā. KP atmiņā darbnīcas grīda tiek attēlota kā rūtiņu laukums, kurā pats KP aizņem rūtiņas. Laukumā dažas rūtiņas var būt bīstamas (netērēsim laiku, mēģinot noskaidrot, ko tieši tas nozīmē), un KP nekad nedrīkst nonākt situācijā, ka KP atrašanās vietā vairāk nekā puse tā noklāto rūtiņu ir bīstamas. Ir zināma KP sākotnējā atrašanās vieta un īpaša rūtiņa, kura noteikti jāuzkopj, t.i., KP jāuzbrauc uz tās. Vienā solī KP var pārvietoties par vienu rūtiņu horizontālā vai vertikālā virzienā, neizejot no laukuma robežām. Nepieciešams noteikt, ar kādu mazāko soļu skaitu KP var nonākt situācijā, ka tas uzkopj īpašo rūtiņu.
Piemēram, 1. attēlā parādītajā kartē , , ar „A“ apzīmēta KP sākotnējās atrašanās vietas kreisā augšējā rūtiņa, bet ar „B“ – īpašā rūtiņa. Bīstamās rūtiņas apzīmētas ar „X“.

Šajā gadījumā īpašo rūtiņu iespējams uzkopt ātrākais 10 soļos, veicot 2. attēlā parādīto maršrutu.
Uzrakstiet datorprogrammu, kas dotam laukuma aprakstam nosaka, ar kādu mazāko soļu skaitu KP no sākuma pozīcijas var nonākt līdz īpašās rūtiņas uzkopšanai!
Ievaddati
Ievaddatu pirmajā rindā dotas trīs naturālu skaitļu – laukuma rindu skaits , laukuma kolonnu skaits un KP malas garums rūtiņās . Tiek garantēts, ka . Starp katriem diviem blakus skaitļiem ievaddatos ir tukšumzīme.
Nākamajās ievaddatu rindās dots laukuma apraksts. Katrā rindā ir tieši simboli un katram un simbols ievaddatu -ās rindas -tajā kolonnā atbilst laukuma -tās rindas -tās kolonnas rūtiņas saturam un var būt:
.
- parasta rūtiņaX
- bīstama rūtiņaA
- KP sākuma atrašanās vietas kreisā augšējā stūra rūtiņa. Šī vienmēr ir parasta rūtiņa un uzdota korekti – t.i., KP pilnībā ietilpst laukumā.B
- īpašā rūtiņa. Šī vienmēr ir parasta rūtiņa.
Izvaddati
Izvaddatu vienīgajā rindā jābūt veselam skaitlim – mazākajam soļu skaitam, kas ļauj no sākuma pozīcijas nonākt līdz īpašās rūtiņas uzkopšanai, vai -1, ja derīgs maršruts neeksistē. Īpašā rūtiņa ir uzkopta tad, ja KP nonāk pozīcijā, kur tas noklāj īpašo rūtiņu. Ievērojiet, ka nekādi nav noteikts, kurai KP rūtiņai uzkopšanas brīdī jāatbilst īpašajai rūtiņai!
Piemēri
Ievaddati
5 9 3
A....X..B
..X..X.X.
.XXX.XX..
X.X.X..X.
...XX....
Izvaddati
10
Izpildes resursu ierobežojumi
Apakšuzdevumi un to vērtēšana
# | Apraksts un ierobežojumi | Punkti |
---|---|---|
1. | Uzdevuma tekstā dotie trīs piemēri | 3 |
2. | 48 | |
3. | un | 28 |
4. | Bez papildu ierobežojumiem | 21 |
1. apakšuzdevuma ievaddati
5 5 3
A.X..
X.B.X
....X
XX...
X.XXX
6 3 1
...
XA.
.X.
X..
B..
...
6 4 2
X...
.AXX
X..X
.X.X
XXXX
X.BX