Cifrul Skip
Gigel a găsit pe o foaie criptări ale unor cuvinte în cifrul Skip. Criptarea funcționează astfel:
Fie un cuvânt de lungimen. Cuvântul îl vom impărti în două părti, prima parte de lungime [n/2], iar a doua parte de [(n+1)]/2. Vom scrie prima literă din prima parte, prima literă din a doua parte, a 2-a literă din prima parte, a 2-a literă din a doua parte, a 3-a literă din prima parte, a 3-a literă din a doua parte … :
AMONG->AOMNGSUSPICIOUS->SCUISOPUISSECRET->SREECTCIPHER->CHIEPR
Criptarea unui text constă în criptarea succesivă a fiecărui cuvânt.
Cifrul Skip
Se dă un numar c care poate fi doar 1 sau 2 și un text în care cuvintele sunt separate printr-un spațiu.
Pentru c=1, textul reprezintă un mesaj necriptat și se cere să-l afișați în urma criptării.
Pentru c=2, textul reprezintă un mesaj criptat și se cere să-l afișați în urma decriptării.
Date de intrare
Fișierul de intrare skip.in citește un număr c și un mesaj.
Date de ieșire
Fișierul de ieșire skip.out va conține pe prima linie mesajul rezultat în urma operației cerute.
Restricții și precizări
1≤lungimea mesajului≤1000000
Exemplul 1:
skip.in
1 THERE IS ONE IMPOSTOR AMONG US
skip.out
TEHRE IS ONE ISMTPOOR AOMNG US
Exemplul 2:
skip.in
2 TEHRE IS ONE ISMTPOOR AOMNG US
skip.out
THERE IS ONE IMPOSTOR AMONG US