fun reciprocalString(input: String): String {
val reciprocalMap = ('a'..'z').zip('z' downTo 'a').toMap() +
('A'..'Z').zip('Z' downTo 'A').toMap()
return input.map { char ->
reciprocalMap[char] ?: char
}.joinToString("")
}
fun main() {
val original = "abc++def";
val reciprocal = reciprocalString(original)
println(reciprocal)
}
/*
run:
zyx++wvu
*/