😡

Offensive Words

Week 33

You are using an online chat and notice some words cause the message to be blocked by the server - you figure out that sometimes replacing certain letters with numbers or punctuation causes the message to be accepted

For example, suppose apple is considered an offensive word - instead, something like @pple or app1e might be accepted

Your goal is to create program to display all of the alternate ways a string can be represented, according to the following JSON mappings:

The data above is saying that "o" can be represented with a "0", while an "i" can be represented by either a "1", "!" or "|" and so on

Suppose we want to represent the text "face" according to those rules - all combinations are shown below - note how the swaps are optional (i.e. you don't have to replace "a" with either "4" or "@" - it can simply remain as "a" too)

For your program, you should display all the possible ways to write the strings hello world and offensive words - you can paste the output in any order, since the site will automatically sort them once you click submit

For example, suppose the program input was the two distinct strings "abc" and "def" - possible output would be as shown below (note how both answers are included together in the same textbox, which is what you should do too):

Hints

Hints will be released at the start of each of the following days - e.g. the start of day 3 is 48 hours after the challenge starts

Release Day Hint
2
3
4
33 2026