- 黑客银行:三角探索
- 仅使用算术运算、单个
for-loop
和单个print
语句 - 不允许进行字符串操作
- 约束
1 ≤ n ≤ 9
- 例如,给定
n=5
作为输入,打印以下输出:
1
22
333
4444
使用数学,它将是
Python 2.7:
for i in range(1,n):
print i*(10**i-1)/9
有关详细信息,请查看repdigit。
Python 3+
- 保留或删除
int
,具体取决于是否需要.0
for i in range(1, n):
print(int(i*(10**i-1)/9))
您不需要在print语句中指定换行符。在python 2中,这意味着使用sys.stdout.write
或导入python3 print
函数
from __future__ import print_function # python 2 only
def expand(n):
for i in range(1, n+1):
for _ in range(i):
print(i, end="")
print(" ", end="")
print("")
expand(5)
1 22 333 4444 55555
在发布了更多的细节,并在hackerlink上链接了最初的问题后,我意识到这实际上不是一个有效的解决方案。尽管如此,我还是会把它留在这里,以防有帮助。