needs: user can jump key doses unit once time

package com.microsoft.controller;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.UUID;

public class MicrosoftBridgeController {
	
	public static void main(String[] args) {
		System.out.println("Hello World!");
		List<Integer> intList=new ArrayList<Integer>();
		intList.add(1);
		intList.add(6);
		intList.add(3);
		intList.add(5);
		intList.add(2);
		int hurdleRaceRet=hurdleRace(4,intList);
		System.out.println(hurdleRaceRet);
	}
	
	/**
	 * needs:
	 * user can jump key doses unit once time : parameter k
	 * hight list is building's hight: parameter height
	 * constraints:
	 * 1<=k<=100
	 * 1<=hight[i]<=100
	 * 0<=i<n(n is building hight list size) 
	 * return
	 * user need drink how much doses unit drinking that this player can jump over all over the building
	 * condition:
	 * check jump once time and compute heighest drinking doses units;
	 * result output is :
	 * 0 or more
	 * @param k
	 * @param height
	 * @return
	 */
	public static int hurdleRace(int k,List<Integer> height) {
		if(k<1 || k>100) {
			return 0;
		}
		for (int i = 0; i < height.size(); i++) {
			if(height.get(i)<1 || height.get(i)>100) {
				return 0;
			}
		}
		List<PlayerJumpBuildingLog> playerJumpBuildingLogList=new ArrayList<PlayerJumpBuildingLog>(); 
		for(Integer buildingDosesUnit : height) {
			PlayerJumpBuildingLog playerJumpBuildingLog=new PlayerJumpBuildingLog();
			playerJumpBuildingLog.setId(UUID.randomUUID().toString());
			playerJumpBuildingLog.setName("");
			playerJumpBuildingLog.setCustBuilding_id("");
			playerJumpBuildingLog.setUserUsingDosesUnitJumpHeight(k);
			int unitsCostDrinkingDoses=buildingDosesUnit-k;
			playerJumpBuildingLog.setUnitsCostDrinkingDoses(unitsCostDrinkingDoses);
			if(k==1 || k==2) {
				playerJumpBuildingLog.setDiffPlayerAbilityflag(DiffRaceAbilityFlag.ASCIALSPECIAL.name());
			}else if(k==3) {
				playerJumpBuildingLog.setDiffPlayerAbilityflag(DiffRaceAbilityFlag.EUROPEANSOURTH.name());
//			}else if() {
//				
//			}
			playerJumpBuildingLogList.add(playerJumpBuildingLog);
		}
		Collections.sort(playerJumpBuildingLogList,new Comparator<PlayerJumpBuildingLog>() {
					public int compare(PlayerJumpBuildingLog o1, PlayerJumpBuildingLog o2) {
						if(o1.getUnitsCostDrinkingDoses()>o2.getUnitsCostDrinkingDoses()) {
							return 1;
						}else if(o1.getUnitsCostDrinkingDoses()<o2.getUnitsCostDrinkingDoses()) {
							return -1;
						}
						return 0;
					}
				}
		);
		List<Integer> racingIntegerJumpUnitsCostList=new ArrayList<Integer>();
		playerJumpBuildingLogList.forEach(e->{
			racingIntegerJumpUnitsCostList.add(e.getUnitsCostDrinkingDoses());
		});
		int jumpUnitsCost=racingIntegerJumpUnitsCostList.get(racingIntegerJumpUnitsCostList.size()-1);
		return jumpUnitsCost;
	}
}

class Player{
	private String id;
	private String name;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	
}

class CustBuilding{
	private String id;
	private String name;
	private Integer buildingHeight;
	private String buildingStationAdstress;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Integer getBuildingHeight() {
		return buildingHeight;
	}
	public void setBuildingHeight(Integer buildingHeight) {
		this.buildingHeight = buildingHeight;
	}
	public String getBuildingStationAdstress() {
		return buildingStationAdstress;
	}
	public void setBuildingStationAdstress(String buildingStationAdstress) {
		this.buildingStationAdstress = buildingStationAdstress;
	}
	
}

class PlayerJumpBuildingLog{
	private String id;
	private String name;
	private Integer userUsingDosesUnitJumpHeight;
	private String diffPlayerAbilityflag;
	private Integer unitsCostDrinkingDoses;
	private String player_id;
	private String custBuilding_id;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Integer getUserUsingDosesUnitJumpHeight() {
		return userUsingDosesUnitJumpHeight;
	}
	public void setUserUsingDosesUnitJumpHeight(Integer userUsingDosesUnitJumpHeight) {
		this.userUsingDosesUnitJumpHeight = userUsingDosesUnitJumpHeight;
	}
	public String getDiffPlayerAbilityflag() {
		return diffPlayerAbilityflag;
	}
	public void setDiffPlayerAbilityflag(String diffPlayerAbilityflag) {
		this.diffPlayerAbilityflag = diffPlayerAbilityflag;
	}
	public Integer getUnitsCostDrinkingDoses() {
		return unitsCostDrinkingDoses;
	}
	public void setUnitsCostDrinkingDoses(Integer unitsCostDrinkingDoses) {
		this.unitsCostDrinkingDoses = unitsCostDrinkingDoses;
	}
	public String getPlayer_id() {
		return player_id;
	}
	public void setPlayer_id(String player_id) {
		this.player_id = player_id;
	}
	public String getCustBuilding_id() {
		return custBuilding_id;
	}
	public void setCustBuilding_id(String custBuilding_id) {
		this.custBuilding_id = custBuilding_id;
	}
}

enum DiffRaceAbilityFlag{
	AMERICAN("1","美国",5),
	EUROPEANTOP3("2","欧洲英国德国法国",6),
	EUROPEANNORTH("3","欧洲西部欧洲",3),
	EUROPEANSOURTH("4","欧洲南部 东部欧洲 西部俄罗斯",3),
	ASCIALSPECIAL("5","亚洲代表HK",1)
	;
	private DiffRaceAbilityFlag(String key, String desc,Integer intAblity) {
		// TODO Auto-generated constructor stub
		this.key=key;
		this.desc=desc;
		this.intAblity=intAblity;
	}
	private String key;
	private String desc;
	private Integer intAblity;
}

#牛客AI配图神器#

#春招至今,你收到几个面试了?##哪些公司一直卡在简历筛选##通信/硬件的薪资开多少,才值得去?##平台or薪资 硬件uu更看重哪个##Agent面试会问什么?#
Java技术 文章被收录于专栏

JavaEE技术 编程开发经验 企业通用技术

全部评论

相关推荐

岗位领域:云计算岗位职责:1、负责块、文件、对象和AI存储的研发工程师,包括自研存储引擎的开发,负责相应产品的研发设计、开发及疑难问题解决,支撑公司千亿级以上索引的访问,保证业务的稳定性;2、解决超大规模存储系统面临的核心挑战,包括但不限于:千亿级元数据/索引的高效管理、EB级别集群扩容下的数据平滑迁移与IO稳定性保障,以及跨地域场景下的数据一致性、容灾与低成本归档等;3、编写高质量、架构优雅、性能卓越、可读性强的代码;保证良好的业务可持续性,良好的运维体验;4、通过软件优化、引入高性能比的新硬件,在保证用户体验的前提下,持续降低存储成本,提升系统性能与可靠性;5、深入存储内核与分布式系统核心模块,如元数据管理、数据分布、一致性协议等高级特性的设计、开发与深度调优。任职要求:1、本科及以上学历,计算机软件或相关专业;2、掌握、熟练go、C++/c中的一种以上语言,熟悉linux/unix编程环境;3、2年及以上存储相关研发经历;4、精通分布式系统、存储系统研发,熟悉常见存储技术栈(如Ceph、Lustre、BeeGFS等),精通linuxIO系统、网络系统,精通高性能系统者优先;5、具备较强技术攻关能力、系统化思维,能独立负责架构设计与关键模块实现。福利待遇、薪资面议;
点赞 评论 收藏
分享
上一篇发完,有同学私信我:“涛哥,道理我都懂,但我成绩一般,没有像样的实习,课外活动也就那样——我根本没东西写啊。”这个问题我必须认真回答。但我要先说一句扎心的话:“没东西写”,有时候不是真正的问题所在。真正的问题,是你写了东西,却和你的真实能力对不上。这篇文章分两部分,对号入座,各取所需。如果你是大二或研一:你还有时间,但别用错方向很多人一听“简历要充实”,第一反应是赶快找实习、报竞赛、加学生会。这个思路本身没错,但顺序反了。正确的顺序是:先想清楚要练什么能力,再去找对应的形式。实习、竞赛、项目只是载体,招聘经理真正在意的,是你通过这些载体练出了什么。能力分两类。硬技能,要老实花时间积累。如果你将来要投技术岗,写了多少代码、实现了哪些功能、踩过哪些坑又爬出来——这些没有捷径。临时抱佛脚很容易在面试时露馅,技术追问两轮就原形毕露。一年时间足够打下扎实的基础,但前提是现在就开始。软技能,可以系统性提升,但不是看几篇文章就够的。沟通、合作、情商这些几乎所有岗位都需要,却是很多应届生最大的短板。但我观察下来,当代大学生最稀缺、也最容易被忽视的软技能,其实是更底层的三样东西:自我认知、抗压能力、和接受负反馈的能力。不知道自己真正擅长什么、边界在哪、盲区是什么——这叫自我认知差。遇到一点压力就焦虑、情绪大起大落——这叫抗压能力弱。被批评或收到负面评价,第一反应是委屈或辩解而不是思考——这叫接受不了负反馈。这三点在职场里会很快暴露,而且很难靠短期突击弥补。网上关于软技能的理论和框架很多,随手可以找到,但我一向认为真正让人成长的是“事教人”。找一个真实的场景去练:你是怎么沟通的?难点在哪?结果怎样?你自己的感受是什么?如果可以重来,哪里可以做得更好?把这个复盘的习惯建立起来,比读一百篇软技能文章都管用。给大二研一的建议只有一句话:用接下来一年里遇到的每一个真实场景,刻意练习,认真复盘。&nbsp;一年后,你会有东西写,更重要的是,你写的东西经得起追问。如果你是大三或研二:问题不是没东西,是写的和真实能力对不上你可能以为自己的困境是“经历太少”。但我做了多年招聘经理,见到更多的情况恰恰相反——简历写得很满,面试却让人失望。我记得有一份简历,赫然写着“参与顶级期刊论文发布”。我当时专门就这段经历深入追问,结果对方告诉我:主要是帮导师查阅资料。那一刻我的感受不是愤怒,而是惋惜。查阅资料本身没什么问题,认真做也是有价值的经历。但简历上的描述和现实之间的落差,让我对他所有的其他经历都打了问号。简历是你递给陌生人的第一份工作成果,言过其实,比没东西写更危险。那如果是真的没什么经历呢?大学四年认真打游戏谈恋爱,现在开始着急了——这种情况比很多人想象的更普遍,我直接说。距离秋招还有几个月,这个时间做不出一段像样的实习。但有两件事现在还来得及。第一,把过去几年里任何一件认真做过的事重新挖出来审视。不要一开始就否定自己。一门课的期末大项目、一次组队比赛、一段兼职打工的经历、甚至帮同学或老师解决过的一个真实问题——先全部列出来,再对每件事问自己三个问题:我具体做了什么?有没有哪怕很小的可量化结果?这件事能证明我具备什么能力?很多人以为自己什么都没有,但认真挖一挖,往往能找到一两件经得起追问的事。第二,立刻启动一件现在就能开始的事。体量不需要大,但要真实、有结果。一个独立完成的小项目、一次主动争取到的短期实习、一个你从零开始学会的技能并付诸实践——哪怕只有几周时间,只要是真实的经历,都比空白强。最忌讳的是临时编造或过度包装。面试官两个追问就能穿帮,而一旦穿帮,整份简历的可信度全部归零。最后一句话不管你现在大几研几,简历的本质都是一样的:它不是你想成为什么人的愿望清单,而是你现在是什么人的真实证明。写不满一页,不丢人。写满了却经不起一个追问,才是真正的危机。【免费招募】10名求职同学,涛哥1v1陪你改简历不知道自己的经历值不值得写?不确定怎么把普通经历写出职场语言?免费招募10名同学,每人1小时在线1v1,涵盖简历诊断与修改、职业方向规划、面试准备。👉&nbsp;私信我,附上你目前的情况和最想解决的困惑,先到先得。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务