题解 | #箭形图案#

箭形图案

https://www.nowcoder.com/practice/a6d1081e0c9a42f19e42ed6cd91556c1

找规律

  • 上半部分(i<=n)
    • 每行先输出 2*(n-i) 个空格
    • 然后输出 i+1 个字符
  • 下半部分(i>n)
    • 每行先输出 2*(i-n) 个空格
    • 然后输出 2*n-i+1 个字符
package main

import (
	"fmt"
)

func main() {
	var n int
	for {
		_, err := fmt.Scan(&n)
		if err != nil {
			return
		}
		for i := 0; i < 2*n+1; i++ {
			if i <= n {
				for j := 0; j < 2*(n-i); j++ {
					fmt.Printf("%c", ' ')
				}
				for j := 0; j <= i; j++ {
					fmt.Printf("%c", '*')
				}
			}
			if i > n {
				for j := 0; j < 2*(i-n); j++ {
					fmt.Printf("%c", ' ')
				}
				for j := 0; j <= 2*n-i; j++ {
					fmt.Printf("%c", '*')
				}
			}
			fmt.Println()
		}
	}
}

全部评论

相关推荐

昨天 11:10
武汉纺织大学 C++
点赞 评论 收藏
分享
01-02 21:17
已编辑
西安理工大学 后端
程序员小白条:项目不太重要,你的优势的算法竞赛,然后多背相关的八股文,项目可以不作为重点考虑,面试可能就简单带过项目就行了,你可以直接写简历,背项目相关的八股文就行,也不用自己做,时间紧张的情况下,性价比最高
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务