51nod-1093:骆驼和香蕉
2个整数N K,中间用空格分隔。(1 <= N, K <= 10000,N <= 5 * K)
输出最少需要消耗多少根香蕉。
1000 500
3837
题解:
对于n<k,香蕉可以一步送到这个就不用说了,当n>k时香蕉不可能一步送到,那怎么办?就需要一个“中转
站”来储存香蕉,那么中转站的位置该怎么选?
------很显然,我们可以将问题转化一下:如何将k根香蕉运送到a点?其中a==n-k,我们假设a比较小以至于刚
刚只需要一个补给点a且只来回一次,这样在路途中总消耗的香蕉为3*a个,因为最终a点要有k根香蕉,且骆驼每次
运输量至多为k,所以有k+3*a<=2*k → a<=k/3,(其中k+3*a便是答案)显然当a<=k/3刚好满足假设中的要求,
也就是说n>k+k/3时就需要2个中转站且来回两次了
------如果n>k+k/3怎么办?可以将问题继续转化,如何将k+3*(k/3)(==2*k)根香蕉运送到b点?其中b==n-k-k/3!
同样假设只需要两个补给点a和b且只来回两次,根据上面的套路仍可列方程2*k+5*b<=3*k → b<=k/5 (其中2*k+5*b
便是答案)
……两个中转点还不够!继续转化:如何将2*k+5*(b/5)(==3*k)根香蕉运送到c点? 同理有方程
3*k+7*c<=4*k(其中3*k+7*b便是答案)
……
如果一直这样循环下去,则说明不可能送到!否则总有解,答案便是x*k+(2*x+1)*pi,其中pi表示第pi个中转站
与起点间的距离
#include<stdio.h>
#include<algorithm>
using namespace std;
int main(void)
{double n, k, tis, ans;scanf("%lf%lf", &n, &k);ans = 0, tis = 1;while(n-k/tis>=0) /*枚举需要中转的次数,k/tis为每多一个中转站可以多运送的距离!*/{n -= k/tis;ans += k;tis += 2;}if(n>0)ans += n*tis;printf("%.0f\n", ceil(ans));return 0;
}
51nod-1093:骆驼和香蕉相关推荐
- 香蕉 ftp_奇怪的香蕉
香蕉 ftp Strange Banana is an automatic page layout generator that uses CSS and XHTML. Being computer ...
- 58页PPT详解,华为公司全面预算管理与实践
欢迎关注肉眼品世界,围观一个华为人的,白手起家突破世俗之路! 计划.预算是实现目标的基石: 财务管理是企业管理的核心 预算管理是财务管理的核心 很多企业失败的症结就是只有辉煌的.抽象的目标,缺乏具体的 ...
- 51nod 1617 奇偶数组
传送门 回来看一眼51nod,发现自己掉到rank4了,赶紧切道题回rank3. 一眼不会做,这种东西应该慢慢找规律吧--然后看到数据范围其实比较小,应该是单次log的,那是不是可以分治啊. #inc ...
- 【仿去哪儿】骆驼动画加载
简单的实现正在加载的动画,比较粗糙,没有实现后面的旋转地球.图一为去哪儿的截图,图二为本文实现的效果 图1 图2 一.新建LoadView继承自UIView,声明几个方法,这样在项目需要用到时,直接调 ...
- [Django](1093, quot;You can#39;t specify target table #39;fee_details_invoices#39; for update in...
dele_id = Fee_details_invoices.objects.filter(fee_detail_id__in=fee_id_list, return_type='2').values ...
- 题目 1093:【蓝桥杯】【入门题】字符逆序
题目 1093:字符逆序 蓝桥杯刷题群已成立,微信后台回复[蓝桥杯],即可进入. 如果加入了之前的社群不需要重复加入. 时间限制: 1Sec 内存限制: 64MB 1. 题目描述 将一个字符串str的 ...
- 51NOD 1773:A国的贸易——题解
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1773 参考1:FWT讲解 https://www.cnblogs.com ...
- 51nod 1040:最大公约数之和(数论)
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1040 给出一个n,求1-n这n个数,同n的最大公约数的和. ...
- 香蕉派 banana pi github 最新Linux 代码升级到kernel 4.2.
2019独角兽企业重金招聘Python工程师标准>>> 香蕉派 banana pi github 最新Linux 代码升级到kernel 4.2. https://github.co ...
最新文章
- 残差神经网络_什么是残差——一文让你读懂GBDT(梯度提升树)-和-Resnet-(残差网络)的原理...
- 文巾解题 面试题 01.06. 字符串压缩
- c3074 无法使用带圆括号的_如何选择路面裂缝贴缝带?
- 7-10 逆波兰表达式求值 (20 分)(c语言)(数据结构)
- 携号转网,用户最关心的还是网络质量
- mysql非必现数据插不进去_MySQL必知必会:数据插入(Insert)
- 万人攻防大战:淘宝优惠活动,沦为黑产盛宴
- 老男孩python分享视频
- 2018年python工作好找吗-2018年Python发展前景如何?Python就业有哪些方向?
- 为什么学习线性代数?
- PID算法的原理和公式
- WPS中word转pdf文件时给pdf文件增加目录
- 如何设计并实施CRM与ERP的整合方案?
- 【MATLAB】求极限
- 20190904_chip-seq/ ATAC-seq/DAP-seq 原理理解
- 【JAVA】-- 黄金矿工小游戏(一)(实现思路+每步代码)
- Finished with error: ProcessException: ProcessXXXXXXXexited abnormally 的解决方法
- 删除U盘中的System Volume Information 文件夹的方法
- 华为虚拟服务器 vrm,安装虚拟化管理服务器-VRM
- js获取URL参数以及Json对象常用方法
热门文章
- 自学python好找工作么-Python就业前景如何?培训后好找工作吗?
- python基础知识-Python语言基础知识总结
- 聚焦2016:关于语音识别、图像识别及大数据
- 未来,语音识别可能应用于哪些商业化场景?
- 怎么让某段css代码只在Chrome 火狐 edge 浏览器生效
- php禁用错误提示,php开启与关闭错误提示详解
- DOM获取元素、事件基础、操作元素、节点操作
- linux代码实现进程监控,linux进程监控shell脚本代码
- java jpms_JDK9的新特性:JPMS模块化
- 【java笔记】IO流(1):IO流概述,字节输出/输入流读写文件