背景
英語のアルファベットが大文字で行に書かれていることを想像してください- ABCDEFGHIJKLMNOPQRSTUVWXYZ
。特別な可変幅のレンズがあり、列の上に配置すると、アルファベットの特定の「窓」が表示され、レンズの外側の文字は視界から隠されているとします。さらに、このレンズには反り特性があるため、レンズ内の最初の文字とそれ以降の2文字ごとに小文字が使用されますが、残りの文字は大文字で表示されます。
たとえば、私たちは、アルファベットの真ん中のどこかに置い長さ5のレンズを持っている可能性があり、私たちは見るでしょう. jKlMn
(空白のショーを確保するために、ここで期間を導く) -ノートK
とM
まだ計上される、一方j
、l
、およびn
すべての低いです-ケース入り。このレンズをアルファベットに沿って左から右にスライドさせると、異なる文字が表示され、異なる文字が大文字になります。ここでのタスクは、レンズがアルファベットに沿ってスライドするときに結果の文字を出力することです。
チャレンジ
入力整数を取り、0 < n < 27
上記のレンズがアルファベットを横切ってスライドするときに表示される文字列を出力または返すプログラムまたは関数を作成します。
n
より大きい値の場合1
、レンズはアルファベットの左側から「ぶら下がる」ことから始まるためA
、レンズの右端のスロットにのみ表示されます。したがって、出力の最初の行A
は、レンズの長さに応じて、大文字または小文字の1つになります。
同様に、レンズZ
の左端のスロットにある場合、レンズのスライドが終了します(つまり、出力の最後の行は常に25スペースに小文字が続くことを意味しますz
)。
例
入力: 1
出力:
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
入力: 4
出力:
A
aB
AbC
aBcD
bCdE
cDeF
dEfG
eFgH
fGhI
gHiJ
hIjK
iJkL
jKlM
kLmN
lMnO
mNoP
nOpQ
oPqR
pQrS
qRsT
rStU
sTuV
tUvW
uVwX
vWxY
wXyZ
xYz
yZ
z
入力: 26
出力:
A
aB
AbC
aBcD
AbCdE
aBcDeF
AbCdEfG
aBcDeFgH
AbCdEfGhI
aBcDeFgHiJ
AbCdEfGhIjK
aBcDeFgHiJkL
AbCdEfGhIjKlM
aBcDeFgHiJkLmN
AbCdEfGhIjKlMnO
aBcDeFgHiJkLmNoP
AbCdEfGhIjKlMnOpQ
aBcDeFgHiJkLmNoPqR
AbCdEfGhIjKlMnOpQrS
aBcDeFgHiJkLmNoPqRsT
AbCdEfGhIjKlMnOpQrStU
aBcDeFgHiJkLmNoPqRsTuV
AbCdEfGhIjKlMnOpQrStUvW
aBcDeFgHiJkLmNoPqRsTuVwX
AbCdEfGhIjKlMnOpQrStUvWxY
aBcDeFgHiJkLmNoPqRsTuVwXyZ
bCdEfGhIjKlMnOpQrStUvWxYz
cDeFgHiJkLmNoPqRsTuVwXyZ
dEfGhIjKlMnOpQrStUvWxYz
eFgHiJkLmNoPqRsTuVwXyZ
fGhIjKlMnOpQrStUvWxYz
gHiJkLmNoPqRsTuVwXyZ
hIjKlMnOpQrStUvWxYz
iJkLmNoPqRsTuVwXyZ
jKlMnOpQrStUvWxYz
kLmNoPqRsTuVwXyZ
lMnOpQrStUvWxYz
mNoPqRsTuVwXyZ
nOpQrStUvWxYz
oPqRsTuVwXyZ
pQrStUvWxYz
qRsTuVwXyZ
rStUvWxYz
sTuVwXyZ
tUvWxYz
uVwXyZ
vWxYz
wXyZ
xYz
yZ
z