为了账号安全,请及时绑定邮箱和手机立即绑定

ceil和floor函数的编程实践

ceil()向上取整
floor向下取整
题目

在最近几场魔兽争霸赛中,赫柏对自己的表现都不满意。
为了尽快提升战力,赫柏来到了雷鸣交易行并找到了幻兽师格丽,打算让格丽为自己的七阶幻兽升星。
经过漫长的等待以后,幻兽顺利升到了满星,赫柏很满意,打算给格丽一些小费。

赫柏给小费是有原则的:

1.最终给格丽的钱必须是5的倍数;
2.小费必须占最终支付费用的5%~10%之间(包含边界)。

升星总共耗费A魔卡,赫柏身上带了B魔卡,赫柏想知道他有多少种支付方案可供选择。

注:魔卡是一种货币单位,最终支付费用=本该支付的+小费

输入描述:

多组测试数据,请处理到文件结束。

对于每组测试数据:

包含两个整数A和B。

保证:

1<=A,B<=2,000,000,000,A<=B。

输出描述:

输出一个整数,代表方案数。

输入例子:

4 100
23 100

输出例子:

0
1

思路

考虑使用ceil和floor函数来取整。

代码
#include <iostream>
#include <math.h>

using namespace std;
int main()
{
int a,b;
while(cin>>a>>b)
{
int count = 0;
int start = ceil(a/0.95);//起点(向上取整)
int end = floor(a/0.90);//终点(向下取整)
while((start % 5 != 0)&&(start<=end))
++start;
for(int i = start; i <= end&&i <= (b-a); i += 5)
++count;
cout<<count<<endl;
}
return 0;
}

引用:
引用自牛客网乐视面试题,程序略作修改

点击查看更多内容
6人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
移动开发工程师
手记
粉丝
424
获赞与收藏
5663

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消