网易2016招聘笔试<升级之路>Java代码
2017-06-09 20:04
337 查看
本文地址:http://blog.csdn.net/shanglianlm/article/details/72968583
小易经常沉迷于网络游戏。有一次,他在玩一个打怪升级的游戏,他的角色的初始能力值为 a。在接下来的一段时间内,他将会依次遇见n个怪物,每个怪物的防御力为b1,b2,b3…bn。 如果遇到的怪物防御力bi小于等于小易的当前能力值c,那么他就能轻松打败怪物,并且使得自己的能力值增加bi;如果bi大于c,那他也能打败怪物,但他的能力值只能增加bi 与c的最大公约数。那么问题来了,在一系列的锻炼后,小易的最终能力值为多少?
输入描述:
对于每组数据,第一行是两个整数n(1≤n<100000)表示怪物的数量和a表示小易的初始能力值。
第二行n个整数,b1,b2…bn(1≤bi≤n)表示每个怪物的防御力
输出描述:
对于每组数据,输出一行,每行仅包含一个整数,表示小易的最终能力值
输入例子:
3 50
50 105 200
5 20
30 20 15 40 100
输出例子:
110
205
小易经常沉迷于网络游戏。有一次,他在玩一个打怪升级的游戏,他的角色的初始能力值为 a。在接下来的一段时间内,他将会依次遇见n个怪物,每个怪物的防御力为b1,b2,b3…bn。 如果遇到的怪物防御力bi小于等于小易的当前能力值c,那么他就能轻松打败怪物,并且使得自己的能力值增加bi;如果bi大于c,那他也能打败怪物,但他的能力值只能增加bi 与c的最大公约数。那么问题来了,在一系列的锻炼后,小易的最终能力值为多少?
输入描述:
对于每组数据,第一行是两个整数n(1≤n<100000)表示怪物的数量和a表示小易的初始能力值。
第二行n个整数,b1,b2…bn(1≤bi≤n)表示每个怪物的防御力
输出描述:
对于每组数据,输出一行,每行仅包含一个整数,表示小易的最终能力值
输入例子:
3 50
50 105 200
5 20
30 20 15 40 100
输出例子:
110
205
package com.mingo.common; import java.util.ArrayList; public class NeteasyUpgrade { public static int upGrade(int inatial, ArrayList<Integer> list){ int result = inatial; for(Integer li:list){ if(result >= li){ result += li; }else{ result += greatestCommondivisor(result,li) ; } } return result; } //使用碾转相除法求最大公约数 public static int gcd(int a,int b){ if(a%b==0){ return b; }else{ return gcd(b,a%b); } } public static int greatestCommondivisor(int num1,int num2){ int result = 1; if(num1>num2){ result = gcd(num1,num2); }else{ result = gcd(num2,num1); } return result; } public static void main(String[] args) { // TODO Auto-generated method stub ArrayList<Integer> list = new ArrayList<Integer>(); for(int i=0;i<10;i++){ int randInt = (int)((Math.random()) * 200); list.add(randInt); } int inatial=100; System.out.println("输入数组为:"); for(Integer li:list){ System.out.print(li+", "); } System.out.println(); int value = upGrade(inatial, list); System.out.println("最终能力为:"+value); } }
相关文章推荐
- 京东2016招聘笔试题<分苹果>Java代码
- 网易2017招聘笔试题<下厨房>Java代码
- 网易2016招聘<路灯>Java代码
- 搜狐2016招聘笔试题<发奖金>Java代码
- 网易2017春招笔试<双核处理>Java代码
- 搜狗2016招聘笔试题<矩阵元素相乘>Java代码(
- 小米实习生笔试题<风口的猪-中国牛市>Java代码
- 名企笔试:2016网易招聘笔试题(奖学金)
- 网易游戏2016实习生招聘在线笔试:A 推箱子
- 2016网易实习生招聘笔试题:已知一般App版本为1.0.0/1.0.1/1.2.3,其符合a.b.c的规则。将排序不规则,约为100w个版本号进行从小到大排序
- 网易游戏2016校园招聘笔试题(一)
- 2016网易春季校园招聘产品策划笔试
- 网易游戏2016校园招聘“游戏研发&平台开发”在线笔试——B题 Best Compression Algorithms
- 网易游戏2016实习生招聘笔试题目--井字棋
- 2016网易春招Java在线笔试回忆录
- 网易游戏2016校园招聘“游戏研发&平台开发”在线笔试——C题 Complicated Expression
- 名企笔试:网易游戏2016招聘笔试题(双核处理)
- hihocoder 网易游戏2016实习生招聘在线笔试 解题报告
- 网易游戏2016实习生招聘笔试题目--推箱子
- 网易游戏2016实习生招聘在线笔试之连连看