关注
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
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 聊聊这家公司值得去吗 #
231834次浏览 2180人参与
# 职场人,说说你的烦心事 #
8386次浏览 70人参与
# 你认为哪个岗位找工作最卷 #
11248次浏览 39人参与
# kpi面有什么特征 #
31141次浏览 201人参与
# 一人一个landing小技巧 #
78572次浏览 1122人参与
# 职场上哪些事情令人讨厌 #
16592次浏览 82人参与
# 秋招最大的收获是什么? #
33805次浏览 296人参与
# 职场吐槽大会 #
205127次浏览 1635人参与
# 大家每天通勤多久? #
41914次浏览 329人参与
# 为了找工作你投递了多少公司? #
8891次浏览 120人参与
# 小红书求职进展汇总 #
56043次浏览 483人参与
# 职场破防瞬间 #
234840次浏览 2125人参与
# 通信硬件牛牛的实习日记 #
7127次浏览 65人参与
# 总结:哪家公司面试体验感最好 #
47546次浏览 336人参与
# 找工作前vs找工作后的心路变化 #
9556次浏览 102人参与
# tplink提前批进度交流 #
162647次浏览 1378人参与
# 机械制造岗投递时间线 #
22673次浏览 345人参与
# 研究所VS国企,该如何选 #
180523次浏览 1768人参与
# 考公还是考研,你怎么选? #
26504次浏览 135人参与
# 硬件人你反向读研了吗 #
41732次浏览 630人参与