4
ASCIIを分割する
ASCIIと改行で95の印刷可能文字が与えられた場合、それを2つの等しい48文字グループ(以降、グループAおよびグループBと呼びます)に分けます。2つのグループ間で、選択した 1対1のマッピングを作成します(完全な裁量権があります)。言い換えれば、Aにマッピングするかもしれないaし、その逆もまた同様で、しかしAまたにマッピングするかもしれない>それはあなたがあなたのプログラムのために必要なものだ場合、およびその逆。 ASCIIを2つのグループに分割したら、各グループの文字のみを使用して、それぞれ2つのプログラムや関数を作成します。つまり、グループAの文字のみを使用する1つのプログラム/関数と、グループBの文字のみを使用する別のプログラム/関数を作成します。 これらのプログラムは、入力として1文字を受信できる必要があります。グループAの文字で書かれたプログラムは、入力がグループAの文字である場合は同じ文字を出力/返す必要があり、グループBの文字を受け取った場合はマップされたグループAの文字を返します。グループAプログラムは常にグループA文字を出力する必要があります。同様に、グループBプログラムは、グループBの文字である場合は同じ文字を出力し、入力がグループAの文字である場合はマップされたグループBの文字を出力する必要があります。 それはそれほど明確ではないかもしれないので、ここに例を示します。すべての大文字がグループAにあり、すべての小文字がグループBにあり、これらの文字の1対1マッピングが1対1であると選択した場合、次のようになります。サンプル入出力: プログラムA: Input Output A A D D a A q Q プログラムB: Input Output A a D d a a q q その他の規則: 2つのプログラムは同じ言語である必要はありません。 両方のプログラムまたは両方の機能である必要はありません。1つはプログラムであり、もう1つは関数である可能性があります。 それらは同じように機能する必要はなく、同じような長さである必要はありません。それらは上記の他のルールを満たしている必要があります。 はい、プログラムの1つだけが改行を使用でき、スペースを使用できるのは1つだけです(これは同じプログラムでも異なるプログラムでもかまいません)。 各プログラムで48文字すべてを使用する必要はありません。 通常の標準的な抜け穴は禁止されています。すべてのプログラムは自己完結型である必要があり、選択したマッピングを含むファイルはありません。 採点基準:code-golf。具体的には、2つのプログラムのテキストのバイトの合計。 次のように回答を投稿してください。 言語-#バイト+言語-#バイト=#バイト マッピングの明確な説明。複雑な場合は、次のようなチャートを使用します。 ABCDEFGHIJKLMNOPQRSTUVWXYZ (etc.) zyxwvutsrpqonmlkjihgfedcba (etc.) または、それを説明するだけで(最初の48個のマップから最後の48個のシーケンスに)、通常どおりに答えを続けることができます。