博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【hdoj_1049】Climbing Worm
阅读量:4321 次
发布时间:2019-06-06

本文共 763 字,大约阅读时间需要 2 分钟。

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1049

以 上升-下降 一次为一个周期,一个周期时间为2分钟,每个周期上升距离为(u-d)。先只考虑上升,再只考虑下降。先上升n/u次,再下降n/u次,这样保证不会超过井口,这样上升和下降各n/u次之后离井口距离为 n-(u-d)*(n/u),用时n/u分钟。最后一定会出现这样的情况,离井口的距离<=u,这样,一次上升即可到达井口,用时1分钟(题目说明了不足一分钟按照一分钟算)。可以用递归和循环两种方式实现。

用Dev-C++编写的C++代码(提交AC)

#include 
#include
using namespace std;int F(int n,int u,int d) //递归算法{ if(u>=n) return 1; else return 2*(n/u)+F(n-(u-d)*(n/u),u,d);}int main(){ int n,u,d,result[1000],k=0; memset(result,0,sizeof(result)); while(1) { cin >> n >> u >> d; if(n==0) break; else //result[k++] = F(n,u,d); //递归算法 { while(u
注意:memset(a,0,sizeof(a))函数需要加载头文件  #include<string.h> 或 #include<memory.h>。

如有纰漏,恳请指正!

转载于:https://www.cnblogs.com/tensory/p/6590797.html

你可能感兴趣的文章
简单的排序算法(冒泡、选择、插入)
查看>>
[剑指Offer] 11.二进制中1的个数
查看>>
重置报表输出选择
查看>>
ip代理池抓取qq音乐热歌前300
查看>>
Android面试题集合
查看>>
Android NDK开发
查看>>
Centos中安装和配置vsftp简明教程
查看>>
spring源码学习之AOP(一)
查看>>
AES加密算法动画演示
查看>>
三种方法实现调用Restful接口
查看>>
php第五节(字符串函数和时间、日期函数)
查看>>
magento主页限制某个目录的产品显示数量
查看>>
SpringBoot整合Netty
查看>>
MongoDB数据库的基本操作
查看>>
PAT乙级1014
查看>>
ORACLE wm_concat自定义
查看>>
[Zend PHP5 Cerification] Lectures -- 6. Database and SQL
查看>>
[Drupal] Using the Administrator theme whenever you want.
查看>>
【Hibernate框架】关联映射(一对一关联映射)
查看>>
【算法】大数乘法
查看>>