当前位置: 首页 > news >正文

HDU2013 蟠桃记

问题链接:HDU2013 蟠桃记。入门训练题,用C语言编写程序。

问题简述:参见上述链接。

问题分析这是一个递推问题,需要经过分析给出递推式或递推函数。只要有了递推式或递推函数问题就解决了。程序可以用递归函数实现,也可以用递推计算实现。

这里给出的是递推计算过程。一般而言,递推计算过程的效率要优于递归。

根据题意有f(n)/2-1 = f(n-1),整理后f(n) = 2 * ( f(n-1) + 1 ),另外f(1)=1。这就是递推关系。

程序说明(略)。

这个问题有似曾相识的感觉,参见:桃子到底有多少。还有很多这样的问题,本质上是同一个问题。

AC的C语言程序如下:

/* HDU2013 蟠桃记 */

/*
 * 分析问题可以得出以下的递推函数:
 * f(1) = 1                   n=1
 * f(n) = 2 * ( f(n-1) + 1 )  n>1
 *
 */

#include <stdio.h>

int peach(int n) {
    if(n == 1)
        return 1;
    else {
        long res = 1L;
        while(--n)
            res = 2 * (res + 1);
        return res;
    }
}

int main(void)
{
    int n;

    while(scanf("%d", &n) != EOF)
        printf("%d\n", peach(n));

    return 0;
}




转载于:https://www.cnblogs.com/tigerisland/p/7564688.html

相关文章:

  • caffe 调试
  • GetKeyState和GetAsyncKeyState以及GetKeyboardState函数的用法与区别2-------C#检查键盘大小写锁定状态...
  • Ntop性能提升方案
  • OC执行JavaScript代码
  • 4.3、Android Studio突破64K方法限制
  • Java集合源码分析(二)ArrayList
  • 性能测试基础知识
  • [PHP内核探索]PHP中的哈希表
  • 前端学习路线(转自知乎)
  • 【我的《冒号课堂》学习笔记】设计原则(1)间接原则
  • 将字符串中的首字母大写
  • koan重新安装系统
  • mysql JDBC URL格式
  • 李洪强iOS开发之OC[015]#pragma mark的使用
  • QCon旧金山2016大会,议题发布及研讨会一瞥
  • 【Leetcode】101. 对称二叉树
  • 【MySQL经典案例分析】 Waiting for table metadata lock
  • Apache的基本使用
  • CSS3 变换
  • ES6 学习笔记(一)let,const和解构赋值
  • JavaScript 基本功--面试宝典
  • javascript 总结(常用工具类的封装)
  • JavaScript服务器推送技术之 WebSocket
  • Java程序员幽默爆笑锦集
  • Markdown 语法简单说明
  • sessionStorage和localStorage
  • V4L2视频输入框架概述
  • vue+element后台管理系统,从后端获取路由表,并正常渲染
  • 工作手记之html2canvas使用概述
  • 聊聊flink的BlobWriter
  • 配置 PM2 实现代码自动发布
  • 如何进阶一名有竞争力的程序员?
  • 微信小程序实战练习(仿五洲到家微信版)
  • 协程
  • 【云吞铺子】性能抖动剖析(二)
  • (1)Map集合 (2)异常机制 (3)File类 (4)I/O流
  • (1)Nginx简介和安装教程
  • (4)Elastix图像配准:3D图像
  • (读书笔记)Javascript高级程序设计---ECMAScript基础
  • (学习日记)2024.01.19
  • (转)3D模板阴影原理
  • (转)Linux下编译安装log4cxx
  • (轉貼) 蒼井そら挑戰筋肉擂台 (Misc)
  • 、写入Shellcode到注册表上线
  • .cfg\.dat\.mak(持续补充)
  • .NET CLR Hosting 简介
  • .NET Compact Framework 多线程环境下的UI异步刷新
  • .Net 路由处理厉害了
  • .NET 中 GetHashCode 的哈希值有多大概率会相同(哈希碰撞)
  • .NET简谈设计模式之(单件模式)
  • /bin、/sbin、/usr/bin、/usr/sbin
  • @angular/cli项目构建--Dynamic.Form
  • @Async注解的坑,小心
  • @CacheInvalidate(name = “xxx“, key = “#results.![a+b]“,multi = true)是什么意思
  • @require_PUTNameError: name ‘require_PUT‘ is not defined 解决方法