エンコードする文字列と列数(キー)を指定して、次のように文字列をエンコードします。
例Hello, world!
とキーを使用します3
まず、列の数を書き出します。
1 2 3
次に、左上から列ごとに1文字ずつテキストを書き、列が足りなくなったら次の行に進みます。
1 2 3
H e l
l o ,
w o
r l d
!
ここで、エンコードされたテキストを取得するには、左上隅からテキストを読み取りますが、今回は最初に1つの列を読み取ってから、次の列を読み取っていきます。スロットにキャラクターがいない場合はスペースを入れてください。
Hl r!eowl l,od
ここには、末尾にスペースがあることに注意してください。
これはエンコードされたテキストです。
別のテストケースはProgramming Puzzles and Code Golf SE
keyを使っています5
:
1 2 3 4 5
P r o g r
a m m i n
g P u z
z l e s
a n d C
o d e G
o l f S
E
エンコードされたテキストはPagzaooErm lndl omPedef gius rnz CGS
です。
その他のテストケース
"abcdefghijklmnopqrstuvwxyz", 2 -> "acegikmoqsuwybdfhjlnprtvxz"
"codegolf.stackexchange.com", 4 -> "cg.ccgoooskhemdltea. efaxnc "
"Pen Pineapple Apple Pen!!!", 7 -> "PeAeeapnnpp! pl!Ple!ie n P "
"1,1,2,3,5,8,13,21,34,55,89", 10 -> "18,,,5115,3,2,8,2931 ,, 53 ,4 "
これはcode-golfなので、バイト数が最も少ないコードが優先されます。
Programming Puzzles and Code Golf
、3
。