' numbers mapping:
'
' a = 1
' b = 2
' ...
' j = 10#
' ...
' z = 26#
Imports System
Imports System.Text
Public Class Program
Public Shared Function ConvertToLowercaseCharachter(ByVal str As String) As Char
Dim num As Integer = Integer.Parse(str)
Return Convert.ToChar(num + 96)
End Function
Public Shared Function DecryptString(ByVal str As String) As String
Dim sb As StringBuilder = New StringBuilder()
Dim i As Integer = 0
While i < str.Length - 2
Dim ch As Char
If str(i + 2) = "#"c Then
ch = ConvertToLowercaseCharachter(str.Substring(i, 2))
i += 2
Else
ch = ConvertToLowercaseCharachter(str.Substring(i, 1))
End If
i += 1
sb.Append(ch)
End While
While i < str.Length
Dim ch As Char = ConvertToLowercaseCharachter(str.Substring(i, 1))
sb.Append(ch)
i += 1
End While
Return sb.ToString()
End Function
Public Shared Sub Main(ByVal args As String())
Console.Write(DecryptString("12310#11#26#"))
End Sub
End Class
' run:
'
' abcjkz
'