class Solution:
def monotoneIncreasingDigits(self, n: int) -> int:
n = str(n)
flag = len(n)
for i in range(len(n)-1, 0, -1):
if n[i - 1] > n[i]:
n = n[:i - 1] + str(int(n[i - 1]) - 1) +n[i:]
flag = i
for i in range(flag, len(n)):
n = n[:i] + '9' + n[i + 1: ]
return int(n)
class Solution:
def minCameraCover(self, root: Optional[TreeNode]) -> int:
result = [0]
if self.travseral(root, result) == 0:
result[0] += 1
return result[0]
def travseral(self, cur, result):
if not cur:
return 2
left = self.travseral(cur.left, result)
right = self.travseral(cur.right, result)
if left == 2 and right == 2:
return 0
if left == 0 or right == 0:
result[0] += 1
return 1
if left == 1 or right == 1:
return 2