首页 > 编程语言 >四个代码融合 依次:小青蛙上台阶 ;求阶乘;求最大公因数;地盘划分(均为递归算法)

四个代码融合 依次:小青蛙上台阶 ;求阶乘;求最大公因数;地盘划分(均为递归算法)

时间:2023-11-04 09:45:51浏览次数:25  
标签:std 递归 int namespace 阶乘 using include 公因数

小壁灯上楼梯 
#include <iostream>
using namespace std;
int a(int c){
    if(c<=2){
        return c;
    }else{
        return a(c-1)+(c-2);
    }
}
int main(int argc, char** argv) {
    int c,k;
    cin>>c;
    cout<<a(c);
    return 0;
}

  

求阶乘
#include <iostream> 
using namespace std;
int s(int n){
	if(n<=2){
		return n;
	}else{
		return n*s(n-1);
	}
} 
int main(){
    int n;
    cin>>n;
    cout<<s(n);
    return 0;
}

  

求最大公因数 
#include <iostream>
using namespace std;
int i(int w,int k){
    if(w%k==0){
        return k;
    }else{
        return i(k,w%k);
    }
    
}
int main(int argc, char** argv) {
    int w;
    int k;
    cin>>w>>k;
    cout<<i(w,k);
    return 0;
}

  

地盘划分
#include<iostream>
#include<algorithm>
#include<cstdio>
using namespace std;
long long a,b,c,s=0;
int main(){
    scanf("%lld",&a);
    scanf("%lld",&b);
    while(a>1){
        if(b>a){c=a;a=b;b=c;}
        s+=a/b;
        a%=b;
    }
    if(a!=0){s+=b;}
    printf("%lld",s);
    return 0;
}

  

标签:std,递归,int,namespace,阶乘,using,include,公因数
From: https://www.cnblogs.com/wangyanbo111/p/17808900.html

相关文章

  • 地盘划分 递归
    地盘划分【例】将一个给定的矩形划分为一个个正方形,其规则是先从矩形中划分出一个尽可能大的正方形,接下来,在剩下的矩形中再划分出一个尽可能大的一个正方形,以此类推。例如,宽*长为3*4的矩形,最少可划分为4个正方形,也就是说。取走一个3*3的正方形后,将问题规模变成3*1,然后变为2*1,最后......
  • 地盘划分(递归)
    #include<iostream>#include<algorithm>#include<cstdio>usingnamespacestd;longlonga,b,c,s=0;intmain(){scanf("%lld",&a);scanf("%lld",&b);while(a>1){if(b>a){c=a;a=b;b=c;}......
  • fibnacci数列递归实现
    fibnacci数列递归实现1.什么是fibnacci数列斐波那契数列指的是一个数列从第三项开始每一项都等于前两项之和。如1,1,2,3,5,8,13,21,34,.......下图为一个几何理解图2.fibnacci数列的递归表达式F(n)=F(n-1)+F(n-2)就是中学所学递推公式3.用C语言递归实现Fib(n)C......
  • 后序遍历非递归(作业
    #define_CRT_SECURE_NO_WARNINGS#defineMax64#include<stdio.h>#include<stdlib.h>//二叉树的定义typedefstructnode{ chardata; intvisit; structnode*lchild; structnode*rchild;}bitree;//栈的定义typedefstruct{ bitree*data[Max]; in......
  • (C语言)1到50的阶乘之和列表,参考用,洛谷:P1009 [NOIP1998 普及组] 阶乘之和
    1到50列表,阶乘之和S=1!+2!+3!+⋯+n!(n≤50)1::12::33::94::335::1536::8737::59138::462339::40911310::403791311::4395471312::52295631313::674997711314::9392826831315::140160263631316::2232439252431317::37801182062031318::678038552634831319::12842......
  • fibnacci数列递归实现
    fibnacci数列递归实现1.网上查询资料说明什么是fibnacci数列?Fibonacci数列是一个整数序列,由意大利数学家LeonardoFibonacci在《计算之书》中提出,序列中的数字是前两个数字的和。序列的前几个数字是:0,1,1,2,3,5,8,13,21,34,...。这个序列以0和1开始,之后的每个数字都......
  • 查询算法——顺序查找(优化),二分查找(递归)
    顺序查找顺序查找又称为线性查找,是一种最简单的查找方法。适用于线性表的顺序存储结构和链式存储结构,从第一个元素开始逐个与需要查找的元素x进行比较,当比较到元素值相同时,返回元素m的下标,如果比较到最后都没有找到,则返回-1;时间复杂度为O(n)点击查看代码publicstaticvoidm......
  • fibnacci数列递归/迭代实现
    什么是fibnacci数列?斐波那契数列(Fibonaccisequence),又称黄金分割数列,因数学家莱昂纳多·斐波那契(LeonardoFibonacci)以兔子繁殖为例子而引入,故又称“兔子数列”,其数值为:1、1、2、3、5、8、13、21、34……在数学上,这一数列以如下递推的方法定义:F(0)=1,F(1)=1,F(n)=F(n-1)+F(n-......
  • 递归函数实现省市区多级联动搜索帮助
    1、需求背景当程序中有互为层级的字段,需要使用搜索帮助时,可以通过多次调用搜索帮助来实现。比如在程序中需要填写省市区三级地址2、实现方式2.1、平铺直叙程序的搜索帮助,通常使用F4IF_INT_TABLE_VALUE_REQUEST来实现。多级的搜索帮助,可以简单的通过多次调用F4函数来实现。点......
  • SqlServer的With递归查询子父级
    工作中有一个需求,要判断客户是否有后续订单,就是查后面的订单是否此客户ID下单,而且要把此客户的所有关联的客户也都判断上这有点头痛,因为关联客户是一个嵌套型父子级的结构,客户A关联客户B,客户B关联客户C,客户C关联客户D,无论取客户A、B、C、D任一一个去查,都要把整个关联关系的客户A......