题解 | #杨辉三角的变形#

杨辉三角的变形

https://www.nowcoder.com/practice/8ef655edf42d4e08b44be4d777edbf43

import java.util.*;
import java.util.stream.*;
import java.util.regex.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
  public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    // 注意 hasNext 和 hasNextLine 的区别
    int n = in.nextInt();

    // 方法一:模拟,将每行都描述出来,超时
    // simulation(n)

    // 方法二:规律 -1-123242324...
    if (n < 3) {
      System.out.println(-1);
    } else {
      System.out.println("2324".charAt((n-3)%4));
    }
  }

  static void simulation(int n) {
    List<Integer> list = new ArrayList<>();
    List<Integer> zeroList = Arrays.asList(0, 0);
    for (int i = 1; i <= n; i ++) {
      if (i == 1) {
        list.addAll(zeroList);
        list.add(1);
        list.addAll(zeroList);
        System.out.println(list);
        continue;
      }
      List<Integer> listN = new ArrayList<>();
      for (int j = 0; j + 2 < list.size(); j++) {
        int num = list.get(j) + list.get(j + 1) + list.get(j + 2);
        listN.add(num);
      }
      listN.addAll(0, zeroList);
      listN.addAll(zeroList);
      list = listN;
      System.out.println(list);
    }


    int result = -1;
    for (int i = 0; i < list.size(); i++) {
      if (list.get(i) != 0 && list.get(i) % 2 == 0) {
        result = i - 2 + 1;
        break;
      }
    }

    System.out.println(result);
  }
}


全部评论

相关推荐

牛牛不会牛泪:脉脉太多这种了,纯水军
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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