7段数字可以使用_|
字符以ASCII表示。以下是尺寸1
位数:
_ _ _ _ _ _ _ _
| _| _| |_| |_ |_ | |_| |_| | |
| |_ _| | _| |_| | |_| _| |_|
通过使每个段成比例地变长来形成更大的尺寸。这是一对3位数字的数字。
___ ___ ___ ___ ___ ___ ___
| | | | | | | | | |
| | | | | | | | | |
|___| |___ | |___ ___| | | |___|
| | | | | | | | | |
| | | | | | | | | |
|___| |___| | ___| ___| |___| ___|
目标
在这个挑战中,您将编写一个程序/函数,该程序/函数可以以一位数字作为输入并标识其大小。要注意的是:如果输入的数字无效,则您的程序应输出0
。
这是代码高尔夫球,最少字节获胜。
您可以编写程序或函数,以STDIN或参数的形式接收数字,然后打印/返回该值。
数字将以多行字符串的形式提供,并以使其成为理想矩形所需的最小尾随空白填充。尾随换行符是输入的可选部分。不会有多余的领导空间。
传递非数字时,它将仍然由_|
字符组成,并填充为矩形,并且没有多余的前导空格。没有空白行。您将不必处理空输入。
输出应为单个非负整数,并带有可选的尾随换行符。如果输入不是任意大小的正确数字,则输出0
。否则,输出大小。
这是给定大小的每个手指的宽度和高度的便捷指南N
。
Digit Height Width (not counting newlines)
1 2N 1
2 2N+1 N+2
3 2N+1 N+1
4 2N N+2
5 2N+1 N+2
6 2N+1 N+2
7 2N+1 N+1
8 2N+1 N+2
9 2N+1 N+2
0 2N+1 N+2
I / O实例
在:
__
|
__|
|
__|
出:
2
在:
|
|
|
出:
0 //because it is of an invalid height. Either 1 char too short or tall.
在:
| |
| |
| |
|____|
|
|
|
|
出:
4
在:
___
|
|___
| |
|___|
出:
0 //1 char too wide
在:
_
|_|
| |
出:
0 //it's not a digit
在:
__
|
|__
|
__|
出:
2
在:
_ _
_| _|
|_ _|
出:
0 //both would be valid individually, but input should be a *single* digit
在:
_
|_|
|_|
出:
1
在:
|
|
出:
1
在:
__|_
|
_ |
_
|__
出:
0
从3年前开始,这大约是将数字转换为7段显示模式的逆过程。
如果不是因为它必须是一个有效数字的规则,这将非常容易...
—
ETHproductions 2016年
我知道@ETHproductions。
—
PhiNotPi
@ETHproductions如果没有该要求,它将与codegolf.stackexchange.com/q/19548/15599
—
Level River St
0
数字之类的东西,是吗?除非您想出一种绘制它们的方法。