用递归算法计算鸭子数

2023-05-16

        问题描述:一个人赶着鸭子去每个村庄卖,每经过一个村子卖去所赶鸭子的一半又一只。这样他经过了七个村子后还剩两只鸭子,问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?

  (1)题目分析:

    设经过第n个村子时有count(n)只鸭子,卖去count(n)/2+1只鸭子,剩下count(n+1)只鸭子,则有count(n)=count(n)/2+1+count(n+1),即count(n)=2*(count(n+1)+1)。经过第8个村子时有2只鸭子,即count(8)=2。出发时共赶count(1)只鸭子,经过第n个村子时卖出count(n)/2+1只鸭子。

  (2)算法构造:

      count(n)=2*(count(n+1)+1)   ,1<=n<8

       count(n)=2                              , n=8


程序源代码:

#include<iostream>
using namespace std;
int count(int n)    //经过第n个村子之前有count(n)只鸭子
{
       if(n==8)        //递归出口
          return 2;
      else
          return 2*(count(n+1)+1);     //递归体
}

void main()
{
      cout<<"出发时共赶"<<count(1)<<"只鸭子"<<endl;
      for(int i=1;i<8;i++)
     {
          cout<<"经过第"<<i<<"个村子卖出"<<count(i)/2+1<<"只鸭子"<<endl;
     }
}




本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用递归算法计算鸭子数 的相关文章

  • 通过UltraEdit(UE)转化\r\n(回车换行)与\n(换行)

    r n 回车换行 是window上的换行符 xff0c n 换行 是linux上的换行符 xff0c 下面介绍通过UltraEdit UE 在windows上实现相互转化 1 r n 回车换行 转化为 n 换行 用UE打开对应的文本文件 x
  • Android多媒体篇

    多媒体接口和娱乐 游戏等业务密切相关 xff0c 灵活地采用多媒体接口 xff0c 可以使应用具备更强的吸引力 1 音频处理 作为多媒体处理的最基本的组成部分 xff0c 音频处理在移动终端上十分复杂 音频的播放 记录 以及多种场景 xff
  • Java基础教程

    一 Java语法 1 java主要特性 Java语言是简单的 xff1a Java语言的语法与C语言和C 43 43 语言很接近 xff0c 使得大多数程序员很容易学习和使用 另一方面 xff0c Java丢弃了C 43 43 中很少使用的
  • JSP基础教程

    xfeff xfeff JSP技术是以Java语言作为脚本语言的 xff0c JSP网页为整个服务器端的Java库单元提供了一个接口来服务于HTTP的应用程序 1 Java简介 1 xff09 为什么使用JSP xff1f JSP程序与CG
  • 系统设计概论

    1 分层系统软件体系结构 1 xff09 简介 层次系统风格将对软件结构组织成一个层次结构 xff0c 一个分层系统组织的 xff0c 每层对上层提供服务 xff0c 同时对下层来讲也是一个服务的对象 在一些分层系统中 xff0c 内部的层
  • python监控windows的cpu,内存,磁盘

    span class hljs comment user bin env python3 span span class hljs comment coding utf 8 span span class hljs keyword impo
  • Java问题_直接运行jar文件,系统没有反应

    问题 xff1a 直接运行jar文件 xff0c 系统没有反应 问题分析 xff1a 我比较好奇为什么安装了Java就可以直接运行 jar文件 https blog csdn net walkingmanc article details
  • 虚拟机安装archlinux的简单步骤

    这篇文章是我在虚拟机安装archlinux之后的一点心得 xff0c 参考了archwiki关于安装arch的一些内容https wiki archlinux org index php Beginners 27 guide 准备工作 选择
  • 服务器远程连接经常连接不上的解决方法

    我们大家在使用服务器的时候或多或少都会有碰上服务器突然远程不上的情况这边给大家分享的服务器远程不上解决办法 xff01 第一步 xff1a 机器如果不通看下是不是被牵引或者内网牵引 xff0c 打开kvm查看系统是否正常运行 1 远程端口通
  • webservice的基础知识以及入门案例1

    一 webService 1 1 webservcie webservice是一种跨操作系统和跨语言的数据调用 数据交换的一种服务技术 用于网络通信 xff0c 多台机器之间的数据交互 最大优点 xff1a webservice最大的好处是
  • 解决docker容器中文乱码,修改docker容器编码格式

    原文链接 http www cnblogs com z belief p 6148463 html 前台上传文件到服务器后 xff0c 服务器返回给前台的文件列表中出现中文乱码 xff0c 所有的中文文件名全部变成 xff1f xff0c
  • Debug: django model querysets-> pandas.Dataframe

    问题描述 在使用Django 的ORM model时 xff0c 有时需要将数据导出并转变成pandas DataFrame 正常的流程应该是 xff1a span class hljs keyword import span pandas
  • mysql数据导出与导入

    只导出表结构 不导出数据 mysqldump opt d stat uroot pxxxx gt stat struct sql linux下 一 导出数据库用mysqldump命令 xff08 注意mysql的安装路径 xff0c 即此命
  • consul配置

    配置文件 1 除了命令行选项之外 xff0c 配置还可以放入文件中 在某些情况下 xff0c 这可能更容易 xff0c 例如使用配置管理系统配置Consul时 2 配置文件是JSON格式 3 配置文件不仅用于设置代理 xff0c 还用于提供
  • consul配置ACL

    1 consul配置文件目录下新增配置文件acl json 内容如下 xff08 实际使用时 xff0c 将注释删除才可使用 xff09 34 acl datacenter 34 34 dc1 34 需要acl配置的数据中心 一般默认是dc
  • centos pptp搭建,windows网关配置

    目录 一 安装 二 配置 三 运行 四 防火墙 五 限速 六 常见问题 七 windows网关设置 一 安装 yum install ppp pptpd y 需要防火墙转发 xff0c 如不想使用iptables可使用其他防火墙 yum i
  • NGINX LOCATION规则

    语法规则 xff1a location 61 uri 首先匹配 61 xff0c 其次匹配 其次是按文件中顺序的正则匹配 xff0c 最后是交给 通用匹配 当有匹配成功时候 xff0c 停止匹配 xff0c 按当前匹配规则处理请求 符号 含
  • -bash:lsnrctl:command not found错误

    哎 xff0c 这个错误折腾了我一下午 xff0c 网上搜索了半天 xff0c 没一个用得上的 现在终于知道为什么了 在linux下 xff0c 使用切换用户命令su切换到ORACLE用户时要加 xff0c 否则ORACLE下的命令全都无效
  • Docker-compose+Dockerfile构建并启动php7.4镜像

    利用官方镜像 43 Dockerfile构建符合自己要求php7 4镜像 DockerFile apt官方源太慢时 xff0c 切换apt源该dockerfile支持的php额外扩展 bcmatch event exif gd mysqli
  • docker-compose快速部署pptp,用于办公环境

    由于pptp安装部署涉及到防火墙 xff0c 路由转发 xff0c 系统内核的相关问题较为复杂 xff0c 且难以排查 xff0c 此处直接使用docker compose快速部署pptp version 39 3 39 services

随机推荐

  • MySQL 手动主从同步不锁表

    本文只能保证锁表时间不会太久 可能会出现从库需要跳过很多语句的情况 备份主库 mysqldump skip lock tables single transaction flush logs hex blob uroot pXXXX mas
  • 实战踩坑---MFC---CreateEvent

    使用事件CreateEvent注意事项 HANDLECreateEvent LPSECURITY ATTRIBUTESlpEventAttributes 安全属性 BOOLbManualReset 复位方式 BOOLbInitialStat
  • ARM指令中如何判断一个立即数是有效立即数

    声明 xff1a 1 本文内容为本人学习嵌入式linux所遇问题后 xff0c 为方便以后学习查阅转载所得 xff0c 若能助人 xff0c 也算报答前人之恩 xff01 2 如若侵犯原创作者权益 xff0c 请与我联系 xff0c 本人愿
  • 8.C++中的拼接字符串

    用sprintf 函数将一个变量从int类型转换到字符串类型 为了正确地完成这个任务 xff0c 你必须确保证目标缓冲区有足够大空间以容纳转换完的字符串 此外 xff0c 还必须使用正确的格式化符 如果使用了不正确的格式化符 xff0c 会
  • 左闭右开的由来(比如python等的range)

    转自 xff1a https www jianshu com p 5eaa330788e8 为了表示 2 3 12 这样一个序列 xff0c 有四种方法 xff1a 2 i lt 13 xff08 左闭右开区间 xff09 1 lt i 1
  • iOS之UITableViewController使用详解(一)tableview上移

    tableview上移解决 xff1a self edgesForExtendedLayout 61 UIRectEdgeNone if 64 available iOS 11 0 UIScrollView appearance setCo
  • matlab中各对象的position属性的相对位置

    1 figure 对象 units属性为 piexls position属性的位置 x y weight height 就是整个屏幕上的显示位置 xff1b 如 xff1a 我的屏幕分辨率是 1366 x 768 则创建figure对象时
  • 【matlab】拟合直线的方法

    1 hough变换 图像空间 gt 参数空间 图像空间的点 xff08 直角坐标系 xff09 在参数空间是一条曲线 xff08 极坐标系 xff09 曲线 xff1a 由垂直每条 过直角坐标中的点的任意斜率的直线相交 xff0c 获得角度
  • Verilog学习之数据常量表达与位宽

    本文原创内容 xff0c 转载请标明出处 原文链接 xff1a https blog csdn net Cixil article details 89422200 Verilog的表示形式 Verilog中整数 xff0c 整型常量即整常
  • matlab曲线拟合方法和函数拐点查找

    拟合曲线 polyfit 曲线拟合函数 a span class token operator 61 span span class token function polyfit span span class token punctuat
  • VS2017:用c++通过occi 读取oracle字符串数据时报错

    问题现象 xff1a 表数据 控制台的输出 xff1a 问题描述 xff1a 编译正常通过 xff0c 也能成功连接上数据库 xff0c 成功从数据库中查询数据到occi结果集 xff0c 从结果集中用getInt取整型字段的数据能成功 x
  • matlab:app designer 之组件 UIAxes 隐藏坐标轴

    问题 xff1a 用坐标轴显示图像时 xff0c 默认显示坐标轴 xff0c 影响美观 xff0c 那如何才能隐藏呢 xff1f 有人可能直接将坐标轴的颜色设置为背景颜色 xff0c 这样我们就看不见了 xff01 不否定这是一种方法 我的
  • 使用pip install安装 whl 文件出现 is not a supported wheel on this platform 解决办法

    报错提示 ERROR span class token operator span rasterio span class token operator span span class token number 1 1 span span
  • jni 环境搭配+第一个测试demo(全流程)

    我的环境搭配 myEclipse 2014 43 vs2017 直接下载正常安装即可 这里需要注意的是配置系统环境变量 xff0c 由于工作需要 xff08 java零基础 43 半吊子c 43 43 xff09 了解学习JNI xff0c
  • JNI中文乱码

    java gt jni gt c 43 43 c 43 43 gt jni gt java 中文显示出现乱码 主要是 Java 和 c 43 43 的编码不一致 xff0c 修改一致即可 修改Java端的看JNI中文乱码 修改c 43 43
  • JNI native函数名称问题

    本地 c 43 43 函数名称是规则是 xff1a Java 包名称 xff08 或类名称 xff09 函数名称 如 xff1a c 43 43 对应的函数名称为 xff1a Java NumberJNICpp average 61 61
  • 如何升级PowerShell

    https www cnblogs com wenBlog p 6198354 html 安装Windows PowerShell 3 0 1 安装Microsoft NET Framework 4 0的完整安装版本 xff08 dotNe
  • 系统添加根证书

    How to add CA to system root Reference KERIOOverview If you want to send or receive messages signed by root authorities
  • C++备忘录092:简单的enum到string的方法?

    godbolt span class token macro property span class token directive keyword include span span class token string lt strin
  • 用递归算法计算鸭子数

    问题描述 xff1a 一个人赶着鸭子去每个村庄卖 xff0c 每经过一个村子卖去所赶鸭子的一半又一只 这样他经过了七个村子后还剩两只鸭子 xff0c 问他出发时共赶多少只鸭子 xff1f 经过每个村子卖出多少只鸭子 xff1f xff08