[Buổi 2][Rẽ nhánh][WS] Bài 1: Bộ tính giá thông minh


LÀM BÀI

Points: 100
Time limit: 1.0s
Memory limit: 256M

Author:
Problem types
Allowed languages
C++

Bộ tính giá thông minh

Bối cảnh

Một khu vui chơi muốn tự động tính giá vé theo chính sách ưu đãi. Giá ban đầu phụ thuộc vào basePrice, sau đó được giảm theo tuổi hoặc trạng thái học sinh; cuối cùng, nếu đi vào cuối tuần thì giá sau giảm được cộng thêm phụ thu.

Điểm quan trọng của bài là thứ tự áp dụng chính sách. Một khách có thể đồng thời thuộc nhiều nhóm, nhưng chỉ nhóm ưu tiên đầu tiên trong mô tả được dùng để xác định mức giảm. Phụ thu cuối tuần luôn được tính sau khi đã xác định giá ưu đãi.

Yêu cầu

Từ basePrice, hãy xác định giá sau ưu đãi theo một trong các nhóm sau, theo đúng thứ tự:

  1. age < 6: giá bằng 0.
  2. 6 ≤ age ≤ 12: trả 50% giá gốc.
  3. age ≥ 60: trả 70% giá gốc.
  4. Các tuổi còn lại nếu isStudent = 1: trả 80% giá gốc.
  5. Trường hợp còn lại: trả 100% giá gốc.

Sau khi có giá trên, nếu weekend = 1 thì cộng thêm 10% trên chính giá đã giảm. Tất cả phép tính thực hiện bằng số nguyên.

Input

Dữ liệu vào được cung cấp theo định dạng sau:

basePrice age isStudent weekend.

Hãy đọc các giá trị theo đúng thứ tự và ý nghĩa đã mô tả trong đề bài.

Output

In kết quả theo đúng định dạng sau:

Giá cuối nguyên.

Không in thêm lời giải thích, nhãn hoặc ký tự ngoài phần kết quả được yêu cầu.

Ràng buộc

basePrice bội 100; cờ 0/1.

Ví dụ 1

Input

100000 5 0 0

Output

0

Giải thích ví dụ

Tuổi nhỏ hơn 6 nên được miễn phí. weekend=0 nên không có phụ thu; output là 0.

Ví dụ 2

Input

100000 13 1 0

Output

80000

Giải thích ví dụ

Khách là học sinh/sinh viên nên giá còn 80%: 100000×80/100=80000. weekend=0 nên không có phụ thu; output là 80000.

Thông tin học tập

  • Buổi: B02
  • Concepts: if-else-if, compound conditions, price calculation
  • Giới hạn kiến thức: B01-B02
  • Time limit: 1 second
  • Memory limit: 256 MB
  • Point: 100

Comments

There are no comments at the moment.

Zalo