关注
import java.util.Scanner;
public class Main {
/**
* 蚂蚱跳跃次数
*
* @param desPoint
* @return
*/
public static int jumpCount(int desPoint) {
int currentJumpPosition = 0;// 当前跳跃的位置
int jumpStep = 0;// 跳跃步进
int jumpCount = 0;// 跳跃次数
while (currentJumpPosition != desPoint) {// 循环,往一个方向跳跃
if (desPoint > 0)
jumpStep += 1; // 正方向
else {
jumpStep += -1;// 反方向
}
jumpCount++;
currentJumpPosition += jumpStep;// 加上步长
// 超过了
if ((desPoint > 0 && currentJumpPosition >
desPoint)
|| (currentJumpPosition < desPoint && desPoint
< 0)) {
jumpCount--;// 减一
currentJumpPosition -= jumpStep;// 减去步进
jumpStep -= 1;// 减一
boolean isForward = false;// 往后
if (desPoint < 0) {
isForward = true; // 往前
}
while (currentJumpPosition != desPoint) {// 来回跳跃,直到达到终点
jumpCount++;
if (isForward) {// 往前跳
if (jumpStep > 0) {
jumpStep = jumpStep + 1;
} else {
jumpStep = -jumpStep + 1;
}
} else { // 往后跳
if (jumpStep > 0) {
jumpStep = -jumpStep - 1;
} else {
jumpStep = jumpStep - 1;
}
}
isForward = !isForward;// 取反
currentJumpPosition += jumpStep;// 加上步长
}
}
}
return jumpCount;
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()) {
int desPoint = scanner.nextInt();// 目标位置
System.out.println(jumpCount(desPoint));
}
}
}
AC 17%
查看原帖
点赞 2
相关推荐
HeaoDng:美团好像可以触发一面通

点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 第一次找实习,我建议__ #
10559次浏览 133人参与
# 如果今天是你的last day,你会怎么度过? #
42490次浏览 279人参与
# 联影求职进展汇总 #
95810次浏览 483人参与
# 秋招暂停,我将对以下公司做出处罚__ #
19459次浏览 81人参与
# 四大天坑是哪四家? #
88537次浏览 227人参与
# 从mentor身上学到了__ #
10646次浏览 153人参与
# 如果有时光机,你最想去到哪个年纪? #
60821次浏览 833人参与
# 你听到的“最没用”的秋招建议 #
15943次浏览 182人参与
# 2025秋招体验点评 #
39134次浏览 387人参与
# 军工所铁饭碗 vs 互联网高薪资,你会选谁 #
3207次浏览 17人参与
# 非技术岗简历怎么写 #
258829次浏览 3093人参与
# 工作以后,你父母对你啥态度 #
7100次浏览 70人参与
# 什么样的公司千万别去 #
10244次浏览 86人参与
# 机械人的保底公司是哪一家? #
43259次浏览 139人参与
# 小红书取消大小周 #
78709次浏览 180人参与
# 你遇到过哪些神仙同事 #
120614次浏览 753人参与
# 选完offer后,你后悔学机械吗? #
45901次浏览 257人参与
# 薪资要看总包还是月薪? #
13036次浏览 141人参与
# 实习生的蛐蛐区 #
833066次浏览 4036人参与
# 秋招签约后的心态变化 #
103641次浏览 917人参与
# 机械人值得去的半导体企业 #
31000次浏览 179人参与
查看13道真题和解析