2844. 生成特殊数字的最少操作

生成特殊数字的最少操作

解法一: 一次遍历

go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
func minimumOperations(num string) int {
hasZero := false
hasFive := false
n := len(num)
for i := n - 1; i >= 0; i-- {
if hasZero && (num[i] == '0' || num[i] == '5') ||
hasFive && (num[i] == '2' || num[i] == '7') {
return n - i - 2
}
if num[i] == '0' {
hasZero = true
} else if num[i] == '5' {
hasFive = true
}
}
if hasZero {
return n - 1
}
return n
}
作者

wuhunyu

发布于

2024-07-25

更新于

2025-01-15

许可协议