首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
有礼貌的山羊追赶太阳
华南师范大学 Java
发布于广东
关注
已关注
取消关注
哥们,牛客样例还是太不全面了,我自创了个样例,你的代码是过不了的。
1?:11
18:59
按理来说这种最小时间应该是18:11 到18:59的时间差,即48分钟。但是你的代码没有考虑这种情况,导致结果为1分钟。
@牛客45421642号:
题解 | #ranko的手表#
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息/**思路:1、最小间隔时间、最大间隔时间2、第一次的小时、分钟,每一位单独处理3、第二次小时分钟,每一位单独处理4、注意各种特殊情况的处理,比如小时第二位,第一次比第二次大,就要将第一位+15、如果分钟,第一次比第二次大,就要将小时往前推,前提是第一次和第二次在所有值填充完了以后,小时相同6、最大相差,直接去各自的极值,不用考虑各种重合情况 */public class Main { public static void main(String[] args) throws IOException{ BufferedReader buff = new BufferedReader(new InputStreamReader(System.in)); //获取输入事件 String time1 = buff.readLine(); String time2 = buff.readLine(); int min = Math.max(1, min(time1, time2)); int max = max(time1,time2); System.out.println(min + " " + max); } //找到两个时间最小差距 public static int min(String time1,String time2) { //取最大时间 //取时间1的时分 String hour1 = time1.split(":")[0]; String minute1 = time1.split(":")[1]; //取最大时间 //获取时间2的时分 String hour2 = time2.split(":")[0]; String minute2 = time2.split(":")[1]; //第一行小时如果是? if(hour1.charAt(0) == '?' && hour2.charAt(0) != '?') { hour1 = hour2.charAt(0) + "" + hour1.charAt(1); } if(hour1.charAt(0) == '?' && hour2.charAt(0) == '?') { if(hour1.charAt(1)>hour2.charAt(1)) { hour1 = "0" + hour1.charAt(1); hour2 = "1" + hour2.charAt(1); }else { hour1 = "0" + hour1.charAt(1); hour2 = "0" + hour2.charAt(1); } } if(hour1.charAt(1) == '?') { if(hour1.charAt(0) == '2') { hour1 = hour1.charAt(0) + "3"; }else { hour1 = hour1.charAt(0) + "9"; } } if(minute1.charAt(0) == '?') { minute1 = "5" + minute1.charAt(1); } if(minute1.charAt(1) == '?') { minute1 = minute1.charAt(0) + "9"; } if(hour2.charAt(0) == '?') { if(hour1.charAt(1)> hour2.charAt(1)) { hour2 = (Integer.parseInt(hour1.charAt(0) + "") + 1) + "" + hour2.charAt(1); } } if(hour2.charAt(1) == '?') { if(hour1.charAt(0) == hour2.charAt(0)) { hour2 = hour2.charAt(0) + "" + hour1.charAt(1); }else { hour2 = hour2.charAt(0) + "0"; } } if(minute2.charAt(0) == '?') { if(hour1.equals(hour2)) { minute2 = minute1.charAt(0) + "" + minute2.charAt(1); }else { minute2 = "0" + minute2.charAt(1); } } if(minute2.charAt(1) == '?') { if(hour1.equals(hour2) && (minute1.charAt(0) == minute2.charAt(0))) { minute2 = minute2.charAt(0) + "" + minute1.charAt(1); }else { minute2 = minute2.charAt(0) + "0"; } } //小时相互减 int resultH = Integer.parseInt(hour2) - Integer.parseInt(hour1); //分钟 if(Integer.parseInt(minute2) < Integer.parseInt(minute1)) { if(resultH == 0) { resultH += 1; } } int minute = Integer.parseInt(minute2) - Integer.parseInt(minute1); return resultH*60 + minute; } //找到最大差距 public static int max(String time1,String time2) { //取最大时间 //取时间1的时分 String hour1 = time1.split(":")[0]; String minute1 = time1.split(":")[1]; //取最大时间 //获取时间2的时分 String hour2 = time2.split(":")[0]; String minute2 = time2.split(":")[1]; //第一位小时如果是? if(hour1.charAt(0) == '?') { hour1 = "0" + hour1.charAt(1); } if(hour1.charAt(1) == '?') { hour1 = hour1.charAt(0) + "0"; } if(minute1.charAt(0) == '?') { minute1 = "0" + minute1.charAt(1); } if(minute1.charAt(1) == '?') { minute1 = minute1.charAt(0) + "0"; } //第二行的时间 if(hour2.charAt(0) == '?') { hour2 = "2" + hour2.charAt(1); } if(hour2.charAt(1) == '?') { if(hour2.charAt(0) == '2') { hour2 = hour2.charAt(0) + "3"; }else { hour2 = hour2.charAt(0) + "9"; } } if(minute2.charAt(0) == '?') { minute2 = "5" + minute2.charAt(1); } if(minute2.charAt(1) == '?') { minute2 = minute2.charAt(0) + "9"; } //小时相互减 int resultH = Integer.parseInt(hour2) - Integer.parseInt(hour1); //分钟 int minute = Integer.parseInt(minute2) - Integer.parseInt(minute1); return resultH*60 + minute; }}
点赞 0
评论 1
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
06-04 18:24
门头沟学院 golang
遇到这样的leader也是倒了霉😓
隔壁桌女同事请假请假去领结婚证,leader来了一句:不可以让你老公一个人去领证吗?我当时心里就!@#¥%……&*(还好我是实习生,干满3个月就跑路了这样的领导可真不值得追随
内向的柠檬精在研究求职打法:
一个爹就能生出他吗
实习吐槽大会
点赞
评论
收藏
分享
04-25 10:12
字节跳动_前端开发(实习员工)
27大二小登想找日常实习
😭能不能帮忙看看简历有什么能优化的地方,如果能捞到个内推就更好了(做梦中)
Amadeus_gugu:
加个教育经历,把重庆大学放那,加大加粗就行
你的简历改到第几版了
点赞
评论
收藏
分享
05-02 11:48
陕西理工大学 Java
我想问他个事儿,你们说他到底有没有呢,好难猜啊😄
喜欢核冬天的哈基米很想上市:
会爆NullPointerException的
点赞
评论
收藏
分享
06-02 03:51
南京航空航天大学 硬件开发
为什么我的mos管驱动电路总是不听话?(上-基本原理总结)
小白噩梦就是mos管驱动电路了,在这个简单的小电路里处处充满了危险的散杂和寄生电容电感,稍有不慎就震荡,轻轻调一点又过阻尼了,跳到最后又发现振铃,得出结论板子画错了,回路电感太大了已经没救了哈哈哈。希望这篇文章能帮到大家一次性扫清所有的基本知识障碍,有时间再出一个常见的故障分析。
牛客创作赏金赛
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
同学们,后端开发其实没你想的那么难
2.6W
2
...
分享一下年底被广州某游戏公司裁员的经历
2.4W
腾讯暑期补捞中
热聊中
3
...
我被光速开除了……
2.3W
4
...
牛友们是选爱情还是选前途?
8296
TP-LINK开奖
热聊中
5
...
作为面试官,比较喜欢听到「实习收获」回答是什么样的?
8115
6
...
我是今年的高考生
7249
7
...
在携程实习后,我的想法更加坚定了
7110
8
...
找实习三个月,感觉已无心气
6648
9
...
27届前端小趴菜如何拿下三个大厂offer 📚
5434
10
...
双非腾讯云智后台开发oc面经
5411
创作者周榜
更多
正在热议
更多
#
我的实习收获
#
23250次浏览
415人参与
#
在国企工作的人,躺平了吗?
#
333082次浏览
3862人参与
#
实习吐槽大会
#
25308次浏览
123人参与
#
商战,最累的是我们
#
12636次浏览
49人参与
#
晒一晒你的工位
#
83707次浏览
298人参与
#
我的租房踩坑经历
#
18765次浏览
225人参与
#
穿越回高考你还会选现在的专业吗
#
17297次浏览
228人参与
#
小厂实习有必要去吗
#
46339次浏览
267人参与
#
求职你最看重什么?
#
69480次浏览
392人参与
#
毕业旅行去哪玩儿
#
953次浏览
29人参与
#
牛友们,签完三方你在忙什么?
#
94822次浏览
837人参与
#
夸夸我的求职搭子
#
190735次浏览
1890人参与
#
摸鱼打卡站
#
39278次浏览
687人参与
#
携程求职进展汇总
#
529571次浏览
3942人参与
#
产运销实习日记
#
51904次浏览
551人参与
#
你小时候最想从事什么职业
#
95447次浏览
1719人参与
#
网易求职进展汇总
#
101799次浏览
982人参与
#
作业帮求职进展汇总
#
52373次浏览
354人参与
#
高学历就一定能找到好工作吗?
#
47525次浏览
589人参与
#
打工人锐评公司红黑榜
#
145222次浏览
906人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务