• 寒假Day21:Catalan Square卡特兰数 JAVA写大数


    Catalan Square

    https://vjudge.net/problem/Gym-100502C

    AC代码:

     1 import java.util.*;//Scanner
     2 import java.lang.*;
     3 import java.io.*;
     4 import java.math.*;
     5  
     6 public class H{
     7     public static void main (String[] args) throws java.lang.Exception{
     8         Scanner read=new Scanner(System.in);
     9         BigInteger[] a=new BigInteger[5050];
    10         a[0]=new BigInteger("1");
    11         int n=read.nextInt();
    12         for(int i=1;i<=n+1;i++)
    13         //a[i]=(a[i-1].multiply(BigInteger.parselnt(4*i-2))).divide(BigInteger.parselnt(i+1));
    14             a[i]=(a[i-1].multiply(BigInteger.valueOf(4*i-2))).divide(BigInteger.valueOf(i+1));
    15         System.out.println(a[n+1]);
    16     }
    17 }

    针对于是否需要抛异常,不抛异常也可以过,还是写一下抛异常吧

    从键盘读入格式:

    必须写:
    Scanner read=new Scanner(System.in);
    
    读入数字:
    int n=read.nextInt();
    括号内先不写参数,是用于进制的
    
    int n=read.nextDouble();
    
    读入字符串:
    String str=read.next();

    这是我长这么大第一次用java在oj上过题,实则感人。(主要是不想学这个题目的另外一种做法了,偷下懒,以后再补)

    待解决:

    • 为什么dp用-1就可以AC但是0清空就TLE ->可能是之前的不要62、不要49的题目太水,这题后台测试数据量大
    • 不明白数位dp为什么只需要清空一次,我觉得会对后面有影响啊
    • java的在线编译器为什么不用谢public,写了会报错,而交到oj上去需要public,不然就报Source Code Error  ->因为运行机制不一样,一般oj都是通过程序调用 不写public则只能同包调用 但一般调用程序和运行程序不在一个包下
  • 相关阅读:
    触发器
    新登录用户的次日成功的留存率
    获取薪水第二多的
    找到薪水比经理高的员工
    成绩排名
    exists 和 in
    sum+case 计数
    前N个员工的salary累计和
    员工的薪水按照salary进行按照1N的排名,相同salary并列
    洛谷2678 跳石头
  • 原文地址:https://www.cnblogs.com/OFSHK/p/12271517.html
Copyright © 2020-2023  润新知