您的位置:首页 > 理论基础

整数划分的递归实现算法

2017-06-20 17:10 344 查看

整数划分的递归实现算法

题目描述:



Java实现:

import java.util.Scanner;
public class IntegerDivision {//整数划分
public static void main(String[] args) {
// TODO 自动生成的方法存根
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
System.out.println(q(n, n));
}
public static int q(int n, int m){
if(n<1 || m<1)
return 0;
if(n==1 || m==1)
return 1;
if(n < m)
return q(n, n);
if(n == m)
return q(n, m-1)+1;
//n>m>1 正整数n的最大加数n1不大于m的划分由n1 = m的划分和n1 <= m-1的划分组成
return q(n, m-1)+ q(n-m, m);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息