C++——递归求解函数

来源:互联网 发布:Mac怎么改变照片日期 编辑:程序博客网 时间:2024/06/04 23:53


ACKERMAN

Time Limit: 3000ms, Memory Limit:10000KB , Accepted:2536, Total Submissions:3739

Description

已知ack函数对于m≥0和n≥0有定义:ack(0,n)=n+1、ack(m,0)=ack(m-1,1)、ack(m,n)=ack(m-1,ack(m,n-1))。输入m和n,求解ack函数。

Input

输入m和n,均为整型,用空格隔开。

Output

输出为整型

  • Sample Input 
    3 2
  • Sample Output
    29

答案如下:
#include<iostream>using namespace std;int ack(int a,int b);int main(){ int m,n,x; cin>>m>>n; x=ack(m,n); cout<<x<<endl; return 0;}int ack(int a,int b){ if(a==0) {  return(b+1); } else if(b==0) {  ack(a-1,1); } else {  ack(a-1,ack(a,b-1)); }}

原创粉丝点击