アルゴリズム分析のAckerman関数の再帰的実現アルゴリズム
566 ワード
Ackerman関数の再帰的実装アルゴリズム.
入力:2つの数字を入力し、nを入力し、mを入力します.
出力:Ackerman関数で計算された値.
例:入力:4 2、出力:16
入力:2つの数字を入力し、nを入力し、mを入力します.
出力:Ackerman関数で計算された値.
例:入力:4 2、出力:16
package suanfafenxi;
import java.util.Scanner;
public class Ackerman {
static int ack(int n,int m){
if(m==0&&n==1) return 2;
if(m>=0&&n==0)return 1;
if(m==0&&n>=2)return n+2;
return ack(ack(n-1,m),m-1);
}
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
int a=s.nextInt();
int b=s.nextInt();
System.out.print(ack(a,b));
}
}