Sunteți pe pagina 1din 4

Ministerul Educaiei Naionale ISJ Timi

Olimpiada Naional de Informatic - Etapa Local Clasa a X-a


24 ianuarie 2014

Problema 1 - vraja 100 puncte


Vrjitoarea cea rea a ferecat-o pe prines ntr-un castel fermecat spunndu-i c va putea iei doar
dac trece prin toate camerele, o singur dat, i i mai rmne suficient putere s ias din
castel, considernd c pentru ieire i consum din putere att cte camere este nevoit s sar
pn n afara castelului. Vrjitoarea rmne la intrarea n castel ca prinesa s nu poat iei pe
acolo. Ea poate ajunge dintr-o camer n alta printr-o vraj pe care o gsete n camera respectiv,
vraj care i arat n ce camer urmtoare ajunge. La fiecare salt ntr-o camer cu numr mai mare
ctig putere i la fiecare salt n camer cu numr mai mic pierde putere, echivalent cu numrul
de camere srite. Ajutai-o pe prines s afle dac poate sau nu iei din castel.

Cerin
Scriei un program care s afieze valoarea puterii rmase ( x dup ieirea din castel) sau -1 dac
nu iese, conform situaiei descrise mai sus.

Date de intrare
Fiierul de intrare vraja.in conine dou linii. Pe prima linie sunt scrise numrul natural
nenul n reprezentnd numrul de camere din castel i numrul natural nenul x, reprezentnd
puterea iniial a prinesei. Pe a doua linie sunt scrise cele n numere naturale c0, c1, c2, c3,,cn-1,
separate prin cte un spaiu, reprezentnd numrul de ordine al camerei n care poate ajunge
prinesa.
Date de ieire
Fiierul de ieire vraja.out va conine o singur linie pe care se va scrie x dac prinesa
poate iei din castel, respectiv -1 dac ea rmne blocat n castel deoarece nu mai are putere s
ias sau deoarece ajunge ntr-o camer prin care a trecut deja.
Restricii i precizri
n, x, ci sunt numere naturale nenule
2 n 3000

1 c0, c1, ,cn 3000


Prinesa pornete din camera 0 i iese doar prin dreapta
O camer poate avea numrul ei nsi: dac nu sunt toate camerele parcurse prinesa se
blocheaz acolo, dac sunt parcurse toate ea poate ncerca s ias
Exemple
vraja.in vraja.out Explicaii

3 1 1 Sunt 3 camere, puterea iniial e 1. Din camera 0 ajunge n 2, puterea


2 1 1 crete cu 2, din camera 2 ajunge n camera 1, puterea scade cu 1, din
camera 1 nu e obligat s sar n alt camer, a parcurs toate camerele,
ca urmare iese din castel avnd putere 2, suficient ct s sar peste
camera 2, rmnnd cu putere 1.

3 1 -1 Sunt 3 camere, puterea iniial e 1. Din camera 0 ajunge n 2, puterea


2 0 1 crete cu 2, din camera 2 ajunge n camera 1, puterea scade cu 1, din
camera 1 se ntoarce n camera 0, unde a fost deja.

5 1 -1 Din camera 0 ajunge n 4, puterea crete cu 4, din camera 4 n camera


4 1 1 2 3 3, puterea scade cu 1, din camera 3 n 2, puterea scade cu 1, din 2 n 1,
puterea scade cu 1, puterea final e 2 i nu poate iei din castel avnd
putere 2, insuficient ct s sar peste camerele 2,3,4 i s ias din
castel
Timp maxim de executare/test: 1 secund
Limita de memorie: 2 Mb
Ministerul Educaiei Naionale ISJ Timi
Olimpiada Naional de Informatic - Etapa Local Clasa a X-a
24 ianuarie 2014

Problema 2 - Markov 100

Strategia general ntr-un algoritm Markov este de a transforma irul de caractere de intrare
x n irul de caractere de ieire y prin aplicarea repetitiv a unui numr de pai.
Paii sunt de forma u v, unde u i v sunt iruri de caractere. Un astfel de pas este
aplicabil irului de intrare x daca exist cel puin o apariie a irului u n x, altfel pasul nu este
aplicabil. Dac pasul este aplicabil, se nlocuiete prima apariie a lui u cu v n irul x i se reiau
paii ncepnd cu primul.
Un algoritm Markov se termin atunci cnd nu mai exist pai aplicabili.

Date de intrare
Fiierul de intrare markov.in conine:
- pe prima linie irul de intrare x;
- pe a doua linie numrul de pai n;
- pe urmtoarele n linii perechi de iruri (u, v) separate prin cte un spaiu.

Date de ieire
Fiierul de ieire markov.out va conine pe prima linie irul x, transformat conform algoritmului
descris..

Restricii i precizri
1 n 100;
x, u, v sunt iruri de maxim 1000 de caractere din alfabetul englez;
Datele de intrare sunt corecte :
1. nu exist pas u v n care u s fie inclus n v ;
2. lungimea irului v este mai mic sau egal cu lungimea irului u;
3. nu exist perechi de pai circulari, de forma ab ef i ef ab.

Exemplu

markov.in markov.out Explicaie


abcdefg ddd Transformrile succesive sunt:
5 abcdefg efcdefg adcdefg adcdadg dcdadg dcddg defdg
ab ef daddg dddg ddd
ef ad
ad d
cd ef
dg d
Timpul limit de execuie: 1 secund/test (1000ms)
Memoria total: 2MB
Dimensiunea maxim a stivei: 1 MB
Dimensiunea maxim a sursei: 5 KB
Ministerul Educaiei Naionale ISJ Timi
Olimpiada Naional de Informatic - Etapa Local Clasa a X-a
24 ianuarie 2014

Descrierea solutiei
Problema vraja

Se citesc valorile date, conform enunului, numrul de camere, puterea i valorile din vectorul c.

Se parcurge vectorul, cu while (condiie pe pozite i switch) pentru a putea sri dintr-o camer n

alta:

- pentru a verifica salt nainte sau salt napoi i a calcula puterea,

- pentru a verifica dac mai poate intra n camera respectiv sau nu,

- se pun camerele parcurse pe o valoare neutr (d.p.d.v al datelor de intrare)

si se folosete un switch pentru vector parcurs (verific valoarea neutr).

Se testeaz switchul i puterea rmas (x>=n-i, unde i este pozitia curent a prinesei) i dac e

ok se calculeaz puterea rmas, dac nu, se afiseaz -1.


Ministerul Educaiei Naionale ISJ Timi
Olimpiada Naional de Informatic - Etapa Local Clasa a X-a
24 ianuarie 2014

Problema - Markov Descrierea soluiei 100

Se rein cei n pasi.


Ct timp mai exist pai aplicabili
Se caut primul pas u aplicabil
Dac exist
se inlocuiete cu perechea lui v
se reia procedura de nlocuire de la primul pas

S-ar putea să vă placă și