一道简单的百度笔试题
来源:互联网 发布:java 退出递归 返回值 编辑:程序博客网 时间:2024/05/16 06:26
一、引言
试着做了一下一道百度笔试题,做着还蛮有意思的,贴出来和大家一起分享一下
二、题目
懒一回,就不敲了,直接贴截图了,哈哈。
三、我的解法
首先考虑编程语言,我最熟悉的莫过于java,那就用java来编写吧。
我的思路:输入都是成组的,第一个是n,第二个是m,因此可以用这一点做为数据分割的原则。不多说,看代码:
for(int i=1;i<args.length;i+=2){double n=Double.parseDouble(args[i-1]);double m=Double.parseDouble((args[i]));getResult(n, m);}
获取到了n和m,那就可以考虑算法了 。还是不多说,看代码:
public static void getResult(double n,double m){double result=0;while(m--!=0){result+=n;n=Math.sqrt(n);}System.out.printf("%.2f\n",result);}嗯,不错,就是简简单单的几行代码,包含的知识点可真不少。不得不说,考察的基础知识还是蛮多的。
配置运行参数:
运行结果:
94.73
3.41
121.57
四、完整代码
/** * Project Name:CloudLibrary * File Name:TestDriver.java * Package Name:test * Date:2015年9月16日上午10:04:54 * Copyright (c) 2015, winton_by@126.com All Rights Reserved. * */package test;/** * ClassName: TestDriver date: 2015年9月16日 上午10:04:54 * * @author winton_by@126.com * @version v1.0 */public class TestDriver {public static void main(String args[]) {for (int i = 1; i < args.length; i += 2) {double n = Double.parseDouble(args[i - 1]);double m = Double.parseDouble((args[i]));getResult(n, m);}}public static void getResult(double n, double m) {double result = 0;while (m-- != 0) {result += n;n = Math.sqrt(n);}System.out.printf("%.2f\n", result);}}
五、最后说一句
大家都相处解法了吗?想必也有人有更好的解法吧,希望能指教一下,共同进步,一起成长嘛。
1 0
- 一道简单的百度笔试题
- 百度的一道笔试题
- 一道百度笔试题
- 一道百度笔试题
- 一道百度笔试题
- 百度一道笔试题
- 一道简单的笔试题
- 一道简单的笔试题
- 一道百度笔试题的解决方案
- 据说是一道百度的笔试题
- 今年百度的一道笔试题
- 百度的一道C++笔试题
- 一道简单的google笔试题
- 一道百度的盒子模型的笔试题
- 百度2010校园招聘中的一道有意思的笔试题
- 百度一道关于promise笔试题的总结
- 百度一道笔试题目的答案
- 2015 百度笔试的一道经典题目
- fatal error LNK1104: cannot open file 'C:\Program Files\OpenNI2\Lib\\.obj解决方案
- (一二八)使用POST上传文件
- Linux/Unix下 PHP 扩展 cURL 编译安装和配置
- 代码中特殊的注释技术——TODO、FIXME和XXX的用处
- 使用 MWC V2.5 中的 MPU6050中的DMP进行计算姿态
- 一道简单的百度笔试题
- js 实现移动div窗体
- 计算两点间的距离
- Swift第六课枚举,枚举中定义方法,结构体
- jquery 无法提交 表单 submit无反映
- ARM-Linux驱动相关头文件知识点
- Uniform Generator hdu-1014
- 最近想在tableviewcontroller上加一个固定悬浮窗,自己问了好多人,做了好多试验,终于成功了!
- uva 10048 - Audiophobia(floyd 的变形)