チャレンジ
ユーザー入力に従って砂時計を出力するための、文字数による最短コード。
入力は 2 つの数値で構成されます。最初の数値は電球の高さを表す 1 より大きい整数で、2 番目の数値は砂時計の容量のパーセンテージ (0 ~ 100) です。
砂時計の高さは、砂時計の電球にさらに線を追加することによって作成されるため、サイズ 2 (許容される最小サイズ) は次のようになります。
_____
\ /
\ /
/ \
/___\
サイズ 3 はより多くのラインを追加し、電球がより多くの「砂」にフィットできるようにします。
キャラクターを使ってサンドを描きxます。上部のバルブには N パーセントの「砂」が含まれ、下部のバルブには (100 - N) パーセントの砂が含まれます。N は 2 番目の変数です。
「容量」は、砂時計に含まれるスペース ( ) の量によって測定されます。パーセンテージが正確でない場合は、切り上げてください。
砂は外側から内側に引き込まれ、パーセンテージの結果が偶数の場合は右側が優先されます。
テストケース
Input:
3 71%
Output:
_______
\x xx/
\xxx/
\x/
/ \
/ \
/__xx_\
Input:
5 52%
Output:
___________
\ /
\xx xx/
\xxxxx/
\xxx/
\x/
/ \
/ \
/ \
/ xxx \
/xxxxxxxxx\
Input:
6 75%
Output:
_____________
\x x/
\xxxxxxxxx/
\xxxxxxx/
\xxxxx/
\xxx/
\x/
/ \
/ \
/ \
/ \
/ \
/_xxxxxxxxx_\
コード カウントには、入力/出力 (つまり、完全なプログラム) が含まれます。