[10053] Cộng hai số nguyên siêu lớn (Big Integer)

Xem dạng PDF

Gửi bài giải

Điểm: 10,00
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: BIGADD.INP
Output: BIGADD.OUT

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Pascal, Python

🤔 Mô tả bài toán:

Trong hệ thống bảo mật RSA, ta cần cộng hai số nguyên siêu lớn có hàng ngàn chữ số. Các số này vượt quá giới hạn lưu trữ của kiểu dữ liệu lớn nhất trong C++ (`long long`). Hãy mô phỏng lại phép toán cộng viết tay đặt tính rồi tính bằng cách xử lý xâu ký tự.

Yêu cầu: Đọc hai số lớn A và B từ tệp BIGADD.INP và ghi tổng của chúng ra tệp BIGADD.OUT.

💾 Dữ liệu vào:

Cho từ tệp văn bản BIGADD.INP có dạng:

* Dòng 1 chứa số nguyên lớn A.
Dòng 2 chứa số nguyên lớn B.
(Độ dài số A và B không quá 1000 chữ số, chỉ chứa các chữ số từ `0` đến `9`).

💻 Dữ liệu ra:

Ghi ra tệp văn bản BIGADD.OUT gồm một dòng duy nhất: Chuỗi chữ số biểu thị tổng của hai số.

🔍 Ví dụ:

BIGADD.INP BIGADD.OUT
99999999999999999999 1 100000000000000000000

📌 Ràng buộc dữ liệu:

+ Không có ràng buộc đặc biệt nào.

⚠️ Lưu ý về File I/O:

Bài tập yêu cầu đọc dữ liệu từ tệp tin BIGADD.INP và xuất kết quả ra tệp tin BIGADD.OUT.

Lưu ý: Vui lòng dùng freopen bình thường để đọc ghi (như code mẫu khi chấm Themis).
Mẹo: Bạn hoàn toàn có thể dùng lệnh ios_base::sync_with_stdio(false); cin.tie(NULL); đi kèm với freopen để tăng tốc độ đọc ghi dữ liệu lớn!


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.