关注
var g [4]int
var nums [4]int
var minDIffMinute int
func nextTime(s string) string {
minDIffMinute = 24*60
strs := strings.Split(s, ":")
hour, _ := strconv.Atoi(strs[0])
minute, _ := strconv.Atoi(strs[1])
minute = hour*60+minute
nums = [4]int{int(strs[0][0])-'0', int(strs[0][1])-'0', int(strs[1][0])-'0', int(strs[1][1])-'0'}
dfs(0, 4, minute)
resMinute:=minute+minDIffMinute
if resMinute > 24*60{
resMinute -= 24*60
}
hour, minute = resMinute/60,resMinute%60
return strconv.Itoa(hour)+":"+strconv.Itoa(minute)
}
func dfs(start int, n int, minute int) {
if n == start {
if g[0] >2 || g[1] > 4 || g[2] > 5 || g[1] > 9{
return
}
curMinute := 60*(10*g[0]+g[1])+10*g[2]+g[3]
if curMinute < minute{
curMinute+=24*60
}
if curMinute==minute{
return
}
if minDIffMinute> curMinute-minute {
minDIffMinute = curMinute-minute
}
return
}
for i:=0;i<4;i++{
g[start] = nums[i]
dfs(start+1, n, minute)
}
}
// 12:21
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 聊聊这家公司值得去吗 #
225783次浏览 2130人参与
# 硬件人你反向读研了吗 #
41638次浏览 629人参与
# 为了找工作你投递了多少公司? #
6679次浏览 84人参与
# 工作一周年分享 #
26649次浏览 126人参与
# 一人一个landing小技巧 #
77231次浏览 1106人参与
# kpi面有什么特征 #
28625次浏览 152人参与
# 入职第一天,你准备什么时候下班 #
54816次浏览 349人参与
# 小米提前批笔试难吗 #
33157次浏览 352人参与
# 正在实习的你,几点下班 #
156325次浏览 1085人参与
# 担心入职之后被发现很菜怎么办 #
125978次浏览 749人参与
# 一人推荐一个机械人值得去的公司 #
403225次浏览 4136人参与
# 毕业论文怎么查AI率 #
43051次浏览 1891人参与
# 夸夸我的求职搭子 #
192187次浏览 1898人参与
# 校招入职后的感受 #
274897次浏览 2668人参与
# 投格力的你,拿到offer了吗? #
82472次浏览 573人参与
# Tplink求职进展汇总 #
130317次浏览 728人参与
# 体制内上岸心路历程 #
26548次浏览 212人参与
# 华为池子有多大 #
87580次浏览 689人参与
# 产品每日一题 #
43542次浏览 563人参与
# tplink提前批进度交流 #
162358次浏览 1367人参与