Giới thiệu
Trong thử thách này, bạn nên chia một số nguyên thành hai phần. Vì không ai thích nhận được miếng bánh nhỏ hơn, mục tiêu của bạn là công bằng nhất có thể. Ví dụ: nếu bạn muốn chia số nguyên 7129
thành hai phần, có 3 cách có thể thực hiện.
7,129
, 71,29
Và 712,9
là tất cả khả năng, nhưng 71,29
là công bằng nhất để tách nó thành hai mảnh vì nó giảm thiểu sự chênh lệch giữa hai:
7 129 -> |7-129| = 122
71 29 -> |71-29| = 42
712 9 -> |712-9| = 703
Thử thách
Cho một số nguyên xác định cách tốt nhất có thể phân vùng nó như được mô tả ở trên và báo cáo sự khác biệt kết quả.
Quy tắc
- Việc chia tách chỉ có ý nghĩa đối với các số nguyên có độ dài ít nhất hai, đầu vào sẽ luôn là ≥ 10
- Đầu vào có thể là số nguyên, danh sách các chữ số hoặc chuỗi
- Bạn không phải xử lý đầu vào không hợp lệ
Tủ thử
Bạn chỉ cần báo cáo sự khác biệt kết quả, phân vùng chỉ ở đây để minh họa:
10 -> 1,0 -> 1
11 -> 1,1 -> 0
12 -> 1,2 -> 1
13 -> 1,3 -> 2
101 -> 1,01 -> 0
128 -> 12,8 -> 4
313 -> 3,13 -> 10
1003 -> 1,003 -> 2
7129 -> 71,29 -> 42
81128 -> 81,128 -> 47
999999 -> 999,999 -> 0
9999999 -> 999,9999 or 9999,999 -> 9000