Pagini recente »
Istoria paginii runda/clasa6_3/clasament
|
Diferențe pentru utilizator/tzepu între reviziile 148 și 104
|
Diferențe pentru problema/shopping între reviziile 8 și 9
|
Diferențe pentru utilizator/andrei_pana între reviziile 36 și 12
|
Diferențe pentru problema/spioni între reviziile 3 și 24
Diferențe între titluri:
spioni
Spioni (baraj gimnaziu)
Diferențe între conținut:
Gigel si Ionel se joacă de-a spionii! De aceea ei imaginează o modalitate de a codifica un mesaj astfel încât nimeni să nu îl poată descifra. Toate mesajele lor au lungimea o putere a lui 2. Ei numerotează literele mesajului începând cu 1. Apoi separă literele în două categorii: cele cu număr de ordine impar în stânga, cele cu numar de ordine par în dreapta, păstrând ordinea lor. Procedeul continuă pentru fiecare grupă nou rezultată începând cu cea din stânga, până când fiecare grupă obținută conține un singur caracter. După terminarea operațiilor alipesc grupele de câte o literă rezultate, începând de la stânga spre dreapta și obțin mesajul codificat.
De exemplu pentru mesajul MESAJNECODIFICAT procedează astfel:
1. numerotează
MESAJNECODIFICAT
123456789...
2. separă până se obține un singur caracter în fiecare grupă și alipind literele de la stânga spre dreapta rezultă mesajul codificat:
MOJISIEAEDNCAFCT
$[*MESAJNECODIFICAT*]$
$[*123456789...*]$
2. separă
$MSJEOIIA EANCDFCT$ apoi repetă pașii 1 și 2 pentru
$12345678 12345678$ fiecare grupă rezultată
$MJOI SEIA ENDC ACFT$
$1234 1234 1234 1234$
$MO JI SI EA ED NC AF CT$
$12 12 12 12 12 12 12 12$
$M O J I S I E A E D N C A F C T$
$1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2$
până se obține un singur caracter în fiecare grupă și alipind literele de la stânga spre dreapta rezultă mesajul codificat:
$[*MOJISIEAEDNCAFCT*]$
h2. Cerință
Cerință
Scrieți un program care să rezolve următoarele două cerințe:
1.dat fiind un mesaj, să determine codificarea acestuia;
2.dat fiind un mesaj codificat, să determine decodificarea acestuia.
# dat fiind un mesaj, să determine codificarea acestuia;
# dat fiind un mesaj codificat, să determine decodificarea acestuia.
h2. Date de intrare
h2. Restricții
*Șirul de caractere din fișierul de intrare conține caractere având coduri ASCII cuprinse între 33 și 127, lungimea șirului fiind o putere a lui 2 cuprinsă între 2 și 4096.
*Pentru teste valorând 50% din punctaj fișierul de intrare conține pe prima linie C.
* Șirul de caractere din fișierul de intrare conține caractere având coduri ASCII cuprinse între 33 și 127, lungimea șirului fiind o putere a lui 2 cuprinsă între 2 și 4096.
* Pentru teste valorând 50% din punctaj fișierul de intrare conține pe prima linie C.
h2. Exemplu
table(example).
table(example).
|_. spioni.in |_. spioni.out |_. spioni.in |_. spioni.out |
| C
MESAJNECODIFICAT
Nu există diferențe între securitate.