Định nghĩa lớp abstract Account có field protected double balance, abstract method double Fee() (phí giao dịch), method public void Withdraw(double amt) trừ balance đi (amt + Fee()). Lớp Saving : Account override Fee() trả 1.0. Lớp Checking : Account override Fee() trả 2.0. Lớp sealed Premium : Checking override Fee() trả 0.5 (gói VIP, phí rẻ hơn). Đọc loại (s|c|p), số dư khởi tạo init, số nguyên k và k số tiền rút. In số dư cuối format "0.00" invariant.
Dòng 1: loại init k. Dòng 2: k số tiền rút (số thực).
0 <= init <= 10^9; 1 <= k <= 100; mỗi amt >= 0.
Một dòng: số dư cuối format "0.00".
Ví dụ:
Đầu vào:
p 1000 3
100 200 300
Đầu ra:
398.50
Giải thích:
Đang tải editor...