Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Trong giờ học Nhập môn về lập trình, thầy Trung cho bạn Luna ba số nguyên ~a, b, c~ và một biểu thức có dạng sau đây
$$a (?) b (?) c (?)$$
trong đó ở mỗi vị trí ~(?)~, bạn Luna có thể điền vào một trong các dấu: cộng, trừ hoặc nhân. Rõ ràng mỗi vị trí có nhiều cách điền nên có thể sinh ra được nhiều kết quả khác nhau, bạn Luna muốn rằng giá trị của biểu thức tính được là càng lớn càng tốt. Chú ý rằng kết quả sẽ được tính theo thứ tự ưu tiên: nhân chia trước, cộng trừ sau và sẽ tính từ trái sang phải (không được thêm dấu ngoặc vào). Hãy giúp Luna chọn cách điền hợp lý và tìm được giá trị lớn nhất có thể.
Input
Dòng đầu tiên chứa 3 số nguyên ~a, b, c~. Biết ~|a|, |b|, |c| ≤ 10^5~
Output
Một dòng duy nhất là giá trị lớn nhất có thể đạt được.
Subtask
- Subtask 1 (50 điểm): Cả ba số ~a, b, c~ đều dương
- Subtask 2 (50 điểm): Không giới hạn gì thêm
Sample Input 1
19 6 7
Sample Ouput 1
798
Sample Input 2
3 2 -1
Sample Ouput 2
7
Giải thích
Ở test đầu tiên, bạn có thể điền vào giữa các dấu nhân để thu được kết quả 19 × 6 × 7 = 798.
Ở test sau, bạn có thể điền như sau ~3 × 2 - (-1) = 7~. Ta có thể kiểm tra được rằng không còn cách điền nào khác để thu được kết quả lớn hơn.
Bình luận