题解 | #圣诞树#

圣诞树

http://www.nowcoder.com/practice/9a03096ed8ab449e9b10b0466de29eb2

import java.util.Scanner;

// 1. 比较笨,弄的挺长时间的
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNext()) {
            int n = sc.nextInt();
            int row = n * 3;
            int count = 0;
            for (int i = 0; i < row; i++) {
                // 输出空格
                for (int j = 0; j < row - 1 - i; j++) {
                    System.out.print(" ");
                }
                // 输出内容
                for (int j = 0; j <= i % 3; j++) {
                    System.out.print("* ");
                }
                // 因为一开始每一个右边的*和左边的都是4个空格,所以这里产生一个变量,以便输出空格
                // 第二个就是 2个
                // 第三就是 0
               //  为了循环,加一个对3的判断,初始化变量
                if (i % 3 == 0) {
                    count = 0;
                }
                // 输出右边的值
                for (int k = 1; k <= i / 3; k++) {
                    // 输出空格
                    for (int j = 0; j < 4 - count; j++) {
                        System.out.print(" ");
                    }
                    // 输出内容
                    for (int j = 0; j <= i % 3; j++) {
                        System.out.print("* ");
                    }
                }
                count += 2;
                System.out.println();
            }
            // 输出
            for (int i = 0; i < n; i++) {
                for (int j = 0; j < row - 1; j++) {
                    System.out.print(" ");
                }
                System.out.println("*");
            }
        }
    }
}
全部评论

相关推荐

03-26 13:04
已编辑
电子科技大学 算法工程师
xiaowl:你这个简历“条目上”都比较有深度性,但是实际上面试官又没法很好的评估你是怎么达到很多看上去很厉害的结果的。要避免一些看上去很厉害的包装,比如高效的内存复用策略的表达,如果仅是简单的一些内存共享机制,而且面试上也没有深挖的空间,就不要这样表达。比如,工程化模式本质上可能就是定义了一些abstract class,那也就没特别多值得讲的内容。建议简历上应该侧重那些你花了大量时间和精力解决、研究的问题,不要过分追求“丰富”,而是关注在技术深入度、问题解决能力的表现上。
没有实习经历,还有机会进...
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务