#403 - Save your BROTHER !!!
Created by : rfim
Save your BROTHER !!!
adikmu sedang bermain sandi-sandi rahasia dengan temannya.tiba - tiba adikmu menangis karena dia dipukuli teman-teman nya yang tidak percaya dengan sandi rahasia yang dibuatnya.
sebagai kakak yang baik kamu berusaha membantu adikmu dengan membuat program dekriptor yang jelas per langkahnya dari enkripsi sandi rahasia yang dibuat adikmu agar teman" adikmu tidak memukuli adikmu lagi
cara enkripsi yang dibuat adikmu adalah :
enkripsi suatu kata dilakukan secara terpisah setiap karakternya. enkripsi yang dilakukan ialah dengan menggeser maju karakter sebanyak c kali.
penggeseran kata itu sendiri dilakukakn sebanyak b kali.
format input :
baris pertama ialah testcase
setiap testcase berisi format input yaitu string s diikuti a dan b lalu c sebanyak b kali dan seterusnya sampai a = panjang string s
keterangan enkripsi
ABCXYZ
3 3
1 2 3
3 3
2 2 2
berarti 3 kata pertama di enkripsi sebanyak 3 kali penggeseran maju sebanyak b kali
dari setiap c yaitu (1 2 3) sehingga enkripsi data pada tahap ini BCDXYZ -> DEFXYZ -> GHIXYZ
dan belaku pula pada 3 kata sesudahnya yaitu XYZ : GHIZAB->GHIBCD->GHIDEF
format output:
kata yang telah di enkripsi lalu dipisah satu baris kosong
lalu dekripsi bertahap dimulai a kata dari depan sesuai dengan inputan a sebelumnya
dan penggeseran sebanyak b kali untuk setiap c (b dan c sesuai dengan inputan sebelumnya) dengan urutan yang terbalik
keterangan ouput :
kata yang telah dienkripsi contoh dari yang diatas ialah GHIDEF
yang diikuti n baris pertama ialah dekripsi dari setiap penggeseran sebelumnya
contoh dari yang diatas :
DEFDEF berarti 3 kata pertama digeser mundur sebanyak 3 kali dari hasil enkripsi
BCDDEF berarti 3 kata pertama digeser mundur sebanyak 2 kali dari hasil enkripsi
ABCDEF berarti 3 kata pertama digeser mundur sebanyak 1 kali dari hasil enkripsi
ABCBCD berarti 3 kata selanjutnya digeser mundur sebanyak 2 kali dari hasil enkripsi
ABCZAB berarti 3 kata selanjutnya digeser mundur sebanyak 2 kali dari hasil enkripsi
ABCXYZ berarti 3 kata selanjutnya digeser mundur sebanyak 2 kali dari hasil enkripsi
constraint :
String hanya menngunakan huruf kapital
1<=panjang string <=100
1 <= a <= panjang string
1 <= b <= 10
1 <= c <= 26
nb : tidak boleh menggunakan array dan stl
input
2
ABC
2 1
1
1 1
1
ABCXYZ
3 3
1 2 3
3 3
2 2 2
OUTPUT
ENCRYPT
BCD
DECRYPT
ABD
ABC
ENCRYPT
GHIDEF
DECRYPT
DEFDEF
BCDDEF
ABCDEF
ABCBCD
ABCZAB
ABCXYZ
Problem Requirement
Runtime Limit : 2 seconds
Memory Limit : 32000000 bytes
Tidak ada komentar:
Posting Komentar