python进阶练习题:自圣诞树【难度:2级】:
任务
圣诞节快到了,你的任务是建立一个定制的圣诞树与指定的字符和指定的高度.
输入:
chars
:指定的字符.N
:指定的高度.一个正整数大于2.
输出:
- 多行字符串.每一行是由’\ N`分离.树包含两个部分:叶子和树干.
叶子应该是N
行.第一行填写1块炭,在第二行填入3个字符,等等.一个单一的空间将被添加之间有两个调整字符,以及一些必要的空间将被添加到左侧,以保持树的形状.没有足够的空间需要被添加到右侧.
躯干应至少1个单位的高度,这取决于N
的值. n的最小值为3,和树干的高度为1米单位的高度.如果N
增加3,和树干增加1个单位.例如,当n是3,4或5,躯干应为1行;当n为6,7或8,躯干应该是2行;等等.
还不明白的任务吗?请看下面的例子;-)
例子
对于字符= "* @○" 和n = 3
,输出应该是:
*
@Ø
* @Ø
|
对于字符= "* @○" 和n = 6
,输出应该是:
*
@Ø
* @Ø
* @ *Ø
@ *ØØ@
* @ *ØØ@
|
|
对于字符= "1234" 和n = 6
,输出应该是:
1
2 3
4 1 2
3 4 1 2
3 4 1 2 3
4 1 2 3 4 1
|
|
对于字符= "123456789" 并且n = 3
,输出应该是:
1
2 3
4 5 6
|
编程目标:
def custom_christmas_tree(chars, n):
#your code here
测试样例:
Test.describe("Basic tests")
Test.assert_equals(custom_christmas_tree("*@o",3),
""" *
@ o
* @ o
|""")
Test.assert_equals(custom_christmas_tree("*@o",6),
""" *
* @ o *
@ o * @ o
* @ o * @ o
|
|""")
Test.assert_equals(custom_christmas_tree("1234",6),
最佳答案(多种解法):
点击查看答案
更多关联题目:
交流讨论:
景越Python基础训练营QQ群
欢迎各位同学加群讨论,一起学习,共同成长!
免责申明:
本博客所有编程题目及答案均收集自互联网,主要用于供网友学习参考,如有侵犯你的权益请联系管理员及时删除,谢谢
题目收集至https://www.codewars/
https://www.codewars/kata/custom-christmas-tree
更多推荐
python进阶练习题:自圣诞树【难度:2级】--景越Python编程实例训练营,不同难度Python习题,适合自学Python的新手进阶
发布评论