Mô tả
Nhà máy thép Hòa Phát lắp hai cảm biến nhiệt độ ở lò nung. Cảm biến A đo nhiệt độ thực bên trong lò, cảm biến B đo nhiệt độ môi trường bên ngoài. Mỗi cảm biến xuất dữ liệu là một số nguyên không âm dạng nhị phân. Tổ giám sát cần biết lò nóng hơn môi trường bao nhiêu độ.
Bạn được giao viết chương trình mô phỏng phép trừ hai số nhị phân theo đúng nguyên lý mạch điện tử: duyệt từng bit từ phải sang trái, dùng một cờ mượn để xử lý trường hợp bit bị trừ nhỏ hơn bit trừ — hoàn toàn không được dùng toán tử trừ - của ngôn ngữ lập trình.
Đầu vào
Hai chuỗi ký tự a và b, mỗi chuỗi chỉ chứa ký tự '0' hoặc '1', biểu diễn hai số nhị phân không âm, độ dài bằng nhau.
Đầu ra
Trả về một chuỗi nhị phân là hiệu a - b. Kết quả không chứa số 0 vô nghĩa ở đầu, ngoại trừ trường hợp kết quả bằng 0 thì trả về "0".
Ràng buộc
- Độ dài hai chuỗi nằm trong khoảng từ 1 đến 16 ký tự.
- Hai chuỗi luôn có cùng độ dài.
a >= b, tức là kết quả luôn không âm.
Ví dụ
Ví dụ 1
- Đầu vào:
a = "1101",b = "0110" - Giải thích:
1101thập phân là 13,0110thập phân là 6. Thực hiện trừ từng bit từ phải sang trái với cờ mượn:- Bit 0:
1 - 0 = 1, mượn = 0. - Bit 1:
0 - 1, không đủ, mượn 1 từ bit 2, kết quả bit là1, mượn = 1. - Bit 2:
1 - 1 - 1(trừ tiếp mượn cũ), không đủ, lại mượn, kết quả bit là1, mượn = 1. - Bit 3:
1 - 0 - 1=0, mượn = 0. - Đọc ngược lại được
"0111", bỏ số 0 đầu ta được"111".
- Bit 0:
- Đầu ra:
"111"