https://lqdoj.edu.vn/problem/normallights
Gọi , là biểu diễn chuỗi kí tự của hai số , .
Việc đầu tiên là cần phải thêm khung cho đến khi hai số này có số lượng khung bằng nhau.
Ta có thể và thêm khung cho đến khi đủ số lượng.
Đặt để tìm ra chi phí thêm khung.
Tiếp theo, ta đổi thành lần lượt rồi tính tổng chi phí mỗi lần đổi. Việc đổi thành là đổi một chữ số qua một chữ số khác.
Ta có bản vẽ sau:
Với biểu diễn cho thanh ngang ở trên cùng, biểu diễn cho thanh dọc ở bên trái trên cùng đầu tiên,…, biểu diễn cho thanh ngang ở dưới cùng.
Ta dùng mảng có phần tử biểu diễn các thanh của chữ số
với
VD: Biểu diễn của số là
Ta sẽ dùng nó để đổi một chữ số qua một chữ số khác, ở đây là qua .
coin += 1
).VD:
Khi tính được chi phí đổi từ qua , ta có thể dễ dàng cộng dồn lại, cộng với chi phí thêm khung và in ra kết quả.
Còn với cách tính và , ta định nghĩa là số lượng thanh của chữ số .
Ta cũng cộng dồn lại như cách tính chi phí, nhưng cần để hai biến riêng biệt.
Một số cách tính chi phí đổi từ qua như cách ngồi nháp hết ra :D (có nhiều nhất 100 cái chứ mấy), nhưng vì mình lười nên mình làm cách này XD