Mai intai trebuie sa te autentifici.
Diferente pentru problema/shift intre reviziile #26 si #8
Diferente intre titluri:
Shift
shift
Diferente intre continut:
== include(page="template/taskheader" task_id="shift") ==
Se da o masinarie care poate sa citeasca si sa scrie caractere. Masinaria dispune de o banda de perechi de caractere de lungime 26 (asezate una dupa alta).Un caracter dintr-o pereche apartine multimii$'a'..'z'$si fiecarecaracterapare de exact doua ori pe banda. Pentru a scrie un text, masinaria are nevoie mai intai sa-l citeascaasa ca dispune de un cap de citire, pozitionat initial pe pozitia 1 pe banda. Pentru a citi un caracter, masinaria trebuie sa-si pozitioneze capul pe un element al benzii care contine caracterul respectiv. Se stie ca, pentru a deplasa capul de citire intr-o directie (stanga sau dreapta) , masina va consuma un joul. De asemenea , pentru a citi primul caracter de pe o pereche i, masina va counsuma$C{~i,0~}$jouli si,pentru a citi al doilea caracter de pe o pereche i, masina va consuma$C{~i,1~}$jouli.
Se da o masinarie care poate sa citeasca si sa scrie caractere. Masinaria dispune de o banda de perechi de caractere de lungime 26 ( asezate una dupa alta ).Un caracter dintr-o pereche apartine multimii 'a'..'z' si fiecare element apare de exact doua ori pe banda. Pentru a scrie un text , masinaria are nevoie mai intai sa-l citeasca . Asa ca dispune de un cap de citire , pozitionat initial pe pozitia 1 pe banda . Pentru a citi un caracter , masinaria trebuie sa-si pozitioneze capul pe un element al benzii care contine caracterul respectiv. Se stie ca , pentru a deplasa capul de citire intr-o directie ( stanga sau dreapta ) , masina va consuma un joul. De asemenea , pentru a citi primul caracter de pe o pereche i, masina va counsuma C{~i,0~} jouli si ,pentru a citi al doilea caracter de pe o pereche i, masina va consuma C{~i,1~} jouli.
h2. Cerinta Dandu-se un text $S$, scrieti timpul minim necesar pentru a-l scrie la masina.
Dandu-se un text S, scrieti timpul minim necesar pentru a-l scrie la masina.
h2. Date de intrare
Fişierul de intrare $shift.in$va contine pe prima linie textul $S$.Pe urmatoarele 26 de linii vor se vor afla cate doua caractere $a{~i,0~}$ si $a{~i,1~}$ separate printr-un spatiu reprezentand primul si respectiv al doilea caracter din perechea a i-a.Pe urmatoarele 26 de linii se for afla $C{~i,0~}$ si $C{~i,1~}$ , numarul de jouli necesari scrierii primului caracter din perechea i si respectiv numarul de jouli necesari scrierii celui de-al doilea caracter din perechea $i$.
Fişierul de intrare $shift.in$ ...
h2. Date de ieşire
În fişierul de ieşire $shift.out$se va afla un singur numar, $Sol$, reprezentand numarul minim de jouli necesari scrierii textului $S$ cu ajutorul masinariei.
În fişierul de ieşire $shift.out$ ...
h2. Restricţii
* $1 ≤ lungime(S) ≤ 100.000$
* sirul $S$ va contine doar caractere din multimea $'a'..'z'$
* $1 ≤ C{~i,j~} ≤ 10$
* $... ≤ ... ≤ ...$
h2. Exemplu table(example). |_. shift.in |_. shift.out |
|phqghumeay l n l f d x f i r c v s c x g g b w k n q d u w o z v s r t k j p e p y t m y q e i m z a a o b j u h h 1 1 1 2 2 2 1 1 1 1 2 2 2 1 2 1 2 2 2 1 1 2 1 2 2 2 2 1 1 2 2 1 1 1 2 1 1 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 | 84
| This is some text written on multiple lines. | This is another text written on multiple lines.
|
== include(page="template/taskfooter" task_id="shift") ==
h3. Explicaţie ... == include(page="template/taskfooter" task_id="shift") ==
Nu exista diferente intre securitate.
Diferente intre topic forum:
7802
