乐视笔试第二编程题(一)
来源:互联网 发布:网络星期一 2015 编辑:程序博客网 时间:2024/06/05 19:47
题目描述:
在最近几场魔兽争霸赛中,赫柏对自己的表现都不满意。
为了尽快提升战力,赫柏来到了雷鸣交易行并找到了幻兽师格丽,打算让格丽为自己的七阶幻兽升星。
经过漫长的等待以后,幻兽顺利升到了满星,赫柏很满意,打算给格丽一些小费。
赫柏给小费是有原则的:
1.最终给格丽的钱必须是5的倍数;
2.小费必须占最终支付费用的5%~10%之间(包含边界)。
升星总共耗费A魔卡,赫柏身上带了B魔卡,赫柏想知道他有多少种支付方案可供选择。
注:魔卡是一种货币单位,最终支付费用=本该支付的+小费
输入描述
多组测试数据,请处理到文件结束。对于每组测试数据:包含两个整数A和B。保证:1<=A,B<=2,000,000,000,A<=B。
输出描述:
输出一个整数,代表方案数。
输入例子:
4 10023 100
输出例子:
01
首先,我们先来分析这个问题:给定的两个数a,b;a代表付给你的钱数,b代表的是手里钱的总数,然后要求是不是有一个数c,要让a+c的和是五的倍数,同时还要求c的范围只能在总钱数的0.05~0.10之间。
这么一分析问题就明朗很多了,下面我们给出程序:
import java.io.*;import java.util.*;class Main{public static void main(String[] args) { Scanner in=new Scanner(System.in); int i=0;int arr,brr; while(in.hasNext()) { int temp=0; arr=in.nextInt(); brr=in.nextInt(); if((arr>brr)||(brr>2000000000))//对输入做要求 return ;int chan=0;//给的小费 for(int k=0;k<brr&&chan<arr;k=k+5)//从0~brr中,是5的倍数都拿来检验 { int sum=k;//当给的钱数是k时 chan=k-arr;//小费数目是多少 if((sum*0.05<=chan)&&(chan<=sum*0.1))//小费满足要求 { temp++;//则加一 } } System.out.println(temp); } }}
这个思路比较好想到,可以拿来求解这个问题,但是大家可以想想,其实这个算法的效率不是很高,每次都要从0开始循环,所以当输入的两个数都比较大时候,消耗的时间应该比较多。
0 0
- 乐视笔试第二编程题(一)
- 笔试编程题(一)
- 网易笔试编程第二题
- 华为2016年秋招笔试编程题(第二题)
- 网易编程笔试题(一):合唱团
- 网易笔试编程题(一)
- 360笔试编程题之第二题
- 笔试编程题第二题编写
- 360java笔试编程第二题20160328
- 完美世界 2016 笔试 编程第二题
- 2017年小红书在线笔试编程第二题
- 乐视编程第二题(二)
- 笔试编程题:(一)进制转换
- 2018网易内推笔试编程题(一)
- 腾讯2017秋招笔试编程题(一)
- 2017年网易校招笔试编程题第二题
- 网易2017内推笔试编程题合集(二)第二题 幸运的袋子
- 2017微软秋季校园招聘在线编程笔试(第二题)
- 使用自定义控件和ListView实现快速索引功能
- 欢迎使用CSDN-markdown编辑器
- 依赖ijkplayer播放视频的项目
- Openstack组件部署 — keystone(domain, projects, users, and roles)
- hiho一下~week58 Beautiful String
- 乐视笔试第二编程题(一)
- 【JavaScript笔记二】请和我互动(常用互动方法)
- Linux系统下的/etc/nsswitch.conf文件
- Sublime3 快捷键
- LeetCode 352. Data Stream as Disjoint Intervals(数据流区间)
- Count Numbers with Unique Digits
- As3嵌入字体
- ios学习路线—Objective-C(通知机制)
- Unity3D游戏制作 Day1-实现角色的移动