Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,959 questions

51,901 answers

573 users

How to decrypt string from a string containing digits (0-9) and # by using numbers mapping in C++

1 Answer

0 votes
/*
numbers mapping:

a = 1
b = 2
...
j = 10#
...
z = 26#
*/

#include <iostream>
#include <sstream>

char ConvertToLowercaseCharachter(std::string str){
    std::stringstream ss(str);
    
    int num;
    ss >> num;
    
    return (char)(num + 96);
}

std::string DecryptString(std::string str) {
    std::stringstream ss;
    int i = 0, len = str.length();
    
    while(i < len - 2) {
        char ch;
        
        if (str[i + 2] == '#') {
            ch = ConvertToLowercaseCharachter(str.substr(i, 2));
            i+=2;
        } else {
            ch = ConvertToLowercaseCharachter(str.substr(i, 1));
        }
        
        i++;
        ss << ch;
    }
    
    while(i < len) {
        char ch = ConvertToLowercaseCharachter(str.substr(i, 1));
        
        ss << ch;
        i++;
    }
        
    return ss.str();
}
    
int main()
{
    std::cout << DecryptString("12310#11#26#") ;
}



/*
run:

abcjkz

*/

 



answered Feb 13, 2024 by avibootz
edited Feb 13, 2024 by avibootz
...