この小さな貯金箱は市場に出ました、この小さな貯金箱はいくつかのコードを書きました...
ああ、そのベーコンのことではなく、サーフランシスベーコンのことです!具体的には、暗号ベーコンは、1500年代後半に、メッセージを別のメッセージ内に隠す方法、ステガノグラフィーの方法として考案しました。
暗号は、その内容ではなく、テキストの表示でメッセージを隠すことで機能します。まず、メッセージの文字は次のようにバイナリ(0〜25)にエンコードされます。
注:コード内で次のエンコードを使用してください。入力内の数字、スペース、またはその他の記号については心配しないでください。ただし、エンコードにこれらの文字を含める人にはいくつかのボーナスを考案できます。他の記号を含める場合、文字はエンコードのスペース0〜25を占める必要があります。
Letter Encoding
A AAAAA
B AAAAB
C AAABA
D AAABB
E AABAA
F AABAB
G AABBA
H AABBB
I ABAAA
J ABAAB
K ABABA
L ABABB
M ABBAA
N ABBAB
O ABBBA
P ABBBB
Q BAAAA
R BAAAB
S BAABA
T BAABB
U BABAA
V BABAB
W BABBA
X BABBB
Y BBAAA
Z BBAAB
メッセージ内のすべての文字を上記A
のsおよびB
sにエンコードしたら、コード用に2つの書体を選択する必要があります。この例では、書体には通常のテキストを、書体A
には太字のテキストを使用しますB
。
だからメッセージ
HELLOWORLD
にエンコードされます
AABBB AABAA ABABB ABABB ABBBA BABBA ABBBA BAAAB ABABB AAABB
そして今、私たちはこのバイナリをキャリアテキストで隠しています。
素早い茶色のキツネは怠け者の犬を飛び越え、羊飼いが見守る野原でうろついています。
キャリアメッセージが実際のエンコードされたメッセージより長い場合は問題ありませんが、短くすることはできません。次にB
、エンコードされたメッセージのsの位置に応じて、キャリアテキストを太字にします。
目E QU IC K BRO W N FO X J U MP S OVE R T H E L AZ Y DO G S、GAM B O L I NG Tに彼はシェパード時計を維持する場合フィールド。
マークダウンなしでは
Th**e** **qu**ic**k** bro**w**n **fo**x **j**u**mp**s **ove**r **t**h**e** **l**az**y**
**do**g**s**, gam**b**o**l**i**ng** in t**he** fields where the shepherds keeps watch.
キャリアメッセージの句読点を使用してメッセージをエンコードしていませんが、句読点をエンコードするかどうかはユーザー次第です。
ルール
入力は、エンコードされるメッセージとキャリアメッセージになります。キャリアメッセージが短すぎる場合は、何らかのエラーメッセージを返します。
エンコード
A
およびの2つの書体を選択する必要があります(B
大文字、小文字、斜体、太字、太字斜体、取り消し線など)、in code format
およびように。これらの書体をエンコードするには、Stack ExchangeのMarkdown形式を使用する必要があります。UPPERCASE, lowercase, *italic*, **bold**, ***bold italic***, <s>strikethrough</s>, `in code format`
出力は、エンコードされたキャリアメッセージである必要があります。上記の例のように、Markdownで表示するか、マークダウンなしで表示します。
エンコードアルゴリズムを作成するだけです。提供したいデコードアルゴリズムは歓迎しますが、、執筆時点ではスコアのや妨げにはなりません。
コードはプログラムまたは関数でなければなりません。
これはコードゴルフであるため、最小バイト数が優先されます。
いつものように、問題が不明な場合はお知らせください。幸運と良いゴルフ!