Cho số n dạng chuỗi. Tìm số lượng số deci-binary nhỏ nhất mà tổng bằng n. Số deci-binary là số thập phân chỉ chứa chữ số 0 hoặc 1.
Ví dụ: n = "132", đầu ra = 3 vì 132 = 10 + 11 + 111.
Giải pháp
Số lượng deci-binary tối thiểu bằng chữ số lớn nhất của n:
- result := 1
- Với mỗi i trong n:
- Nếu i không trong {0,1}: result := max(result, int(i))
- Trả về result
Ví dụ minh họa
Xem triển khai sau để hiểu rõ hơn:
def solve(n):
result = 1
for i in n:
if i not in {'0', '1'}:
result = max(result, int(i))
return result
n = "132"
print(solve(n))
Đầu vào
132
Đầu ra
3