星の王子様のチャプターIをできるだけ多く出力または返すプログラムまたは関数を作成する必要があります。プログラムまたは関数は、印刷可能なASCII文字(32〜126のコードポイント)と各行の終わりの改行のみを含むM行N列のコードブロックでなければなりません。
96個の印刷可能なASCII文字(および行の最後の改行)から選択した最大26文字しか使用できません。
各行と列で、すべてのキャラクターは数独パズルのように明確に区別する必要があります。つまり、行または列に2回文字を入れることはできません。
正しい例とコードブロックM = 4
、N = 3
およびalphabet = {a,b,c,d,/,*}
:
abcd
bcd*
*/ac
コードの詳細
- コードブロックの形状(
M
およびN
)を選択できます。 - ブロックはすべて文字で埋める必要があります。つまり、すべての行は同じ長さでなければなりません。
- 最後の行の末尾の末尾の改行はオプションです。
- 上記の各行と各列に書かれているように、すべての文字は明確でなければなりません。
出力の詳細
- 追加出力なしで、星の王子さまの第1章の接頭辞を出力するか返す必要があります。
- テキスト内の改行に到達した場合、一般的なバリアント(\ r、\ n、\ r \ n)として表すことができますが、そのうちの1つだけを使用し、スコアの1バイトとしてカウントします。
- 追加の末尾の改行はオプションです。
スコアは、出力テキストの長さであり、追加の改行がある場合はそれを除きます。スコアが高いほど優れています。
回答例
##Python3, score = 6
alphabet = `print('O\ce w)#X` (alphabet element count = 16)
print('O\
nce w')#X
このPython 3(ideone)プログラムまたは@MartinBüttnerが提供するこのCJamプログラム(オンライン)を使用して、コードの妥当性を確認できます。