1 条题解
-
0
Java :
import java.math.BigInteger; import java.util.Scanner; public class Main { static BigInteger dp[][] = new BigInteger[309][309]; public static void prep() { for(int i=1;i<=300;i++) for(int j=1;j<=300;j++) dp[i][j]=BigInteger.valueOf(-1); for(int i=1;i<=300;i++) { dp[0][i]=dp[1][i]=dp[i][1]=BigInteger.valueOf(1); } for(int i=1;i<=300;i++){ for(int j=1;j<=300;j++) { if(dp[i][j].equals(BigInteger.valueOf(-1))) { dp[i][j]=dp[i][j-1]; if(i>=j) { dp[i][j]=dp[i][j].add(dp[i-j][j]); } } } } } public static void main(String[] args) { prep(); Scanner sc = new Scanner(System.in); while(sc.hasNext()){ int m,n; m=sc.nextInt(); n=sc.nextInt(); System.out.println(dp[m][n]); } } }
- 1
信息
- ID
- 3688
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- (无)
- 递交数
- 0
- 已通过
- 0
- 上传者