ほとんどの人は、羊が眠りにつくのを数えようとすることを知っています。羊の群れがいて、そのうちのいくつかはフェンスを飛び越えており、あなたは彼らがジャンプするときに羊を数えます。おそらく、これはあなたの心を静め、眠りに落ちるようにあなたを睡眠のような状態にするのに役立ちます。
カウントされるのを待っている、右向きのASCII羊です。
'00^>
||
ASCII羊がフェンスを飛び越えています:
'00^>
/\
++
すでに数えられている、左向きの1つを次に示します。
<^00'
||
チャレンジ
2つの入力整数、n
およびが与えられ、合計の羊の数m
をn > 2
記述し、m > 0
すでに数えられた羊の数を言って、眠りに落ちる羊を数えるASCIIアート表現を出力します。
ツイストのために:
- 羊がいるペンの大きさにより、一番上の列には最大数の
10
羊しか収容できず、常に一番上の列にいる必要がある現在ジャンプしている羊は数えられません。 - 後続の行では、それぞれのペンの外側に羊を置くことはできません(2番目の行の左側に1番目の行よりも多くの羊を置くことはできません。右側にも同じ羊を置くことはできません)。
11
羊の総数が1匹以上ある場合は、一番上の行に10
プラスのジャンプ羊が必要です。- 前後の空白、および羊の間の空白は問題ではありません。
- 羊の間には少なくとも1つの空白文字があります
- すべてのキャラクターが適切に並んでいます。
これらのルールが満たされている限り、羊の実際の配置は実装次第です。
例
たとえば、ここにとがn=3
ありm=1
、これが最も単純なケースです。
'00^>
'00^> /\ <^00'
|| ++ ||
これはとでn=11
、m=6
1本の水平線に収まる最も羊です。
'00^>
'00^> '00^> '00^> '00^> /\ <^00' <^00' <^00' <^00' <^00' <^00'
|| || || || ++ || || || || || ||
ここではその別の例はで、だn=11
とm=1
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00'
|| || || || || || || || || ++ ||
n=30
andのより大きな例m=12
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00' <^00'
|| || || || || || || || ++ || ||
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> <^00' <^00'
|| || || || || || || || || ||
'00^> <^00' <^00'
|| || ||
<^00' <^00'
|| ||
<^00' <^00'
|| ||
<^00' <^00'
|| ||
ここでの例だn=17
と、m=2
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00' <^00'
|| || || || || || || || ++ || ||
'00^> '00^> '00^> '00^> '00^> '00^>
|| || || || || ||
ここでの例だn=19
と、m=3
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00' <^00' <^00'
|| || || || || || || ++ || || ||
'00^> '00^> '00^> '00^> '00^> '00^> '00^>
|| || || || || || ||
'00^>
||
これらはすべて例であることに注意してください。最後の1つについては、右側に羊の垂直配列を作成して、左側を2列に収めることができます。または、右側にある2x2の羊の場合、左側の羊も2列に収まります。等。
I / Oとルール
n=11
およびm=9
n=11
ようなテストケースは10個あります0<m<=10
。これにより、すべての羊が一番上の行に配置され、動的な数の羊がフェンスの左側(n-1-m
)および右側(m
)に配置され、固定ペンサイズを使用できなくなります。