BIẾT KẾT QUẢ NGAY SAU KHI NỘP BÀI - NÂNG CAO KĨ NĂNG TỰ HỌC MIỄN PHÍ
VNOJ Online Judge là nền tảng học tập và rèn luyện tư duy toán học, giúp học sinh phát triển khả năng lập luận logic thông qua việc giải quyết các bài toán bằng các ngôn ngữ lập trình khác nhau. Hệ thống hỗ trợ nhiều ngôn ngữ như: Pascal, C, C++, Java, Python, Scratch…
Tuy nhiên, VNOJ.IO.VN lựa chọn C++ làm ngôn ngữ trọng tâm phù hợp với học sinh THCS–THPT, góp phần rèn luyện tư duy toán học và lập luận logic, đồng thời giúp các em dễ dàng tiếp cận các ngôn ngữ lập trình khác sau này. Hiện tại cũng có thể chọn nộp bằng Python, Java, C#, Scratch.
Tổng điểm đã bỏ % điểm rating
Bài 116: Phân bổ ngân sách 50 30 20
Xem dạng PDFBài toán
Quy tắc 50/30/20 là phương pháp quản lý tài chính cá nhân nổi tiếng, giúp bạn phân bổ thu nhập sau thuế thành 3 nhóm chi tiêu:
- 50% - Nhu cầu thiết yếu (needs): nhà ở, thức ăn, đi lại, điện nước, bảo hiểm, …
- 30% - Mong muốn (wants): ăn ngoài, giải trí, du lịch, sở thích, mua sắm, …
- 20% - Tiết kiệm & Đầu tư (savings): quỹ dự phòng, đầu tư dài hạn, trả nợ sớm, …
Bạn có thể thử công cụ tính toán trực quan tại:
https://behitek.com/behivest/tools/budget-allocator/
Cho thu nhập sau thuế hàng tháng là ~N~ (đơn vị: đồng, số nguyên dương).
Hãy tính số tiền phân bổ cho từng nhóm theo quy tắc 50/30/20.
Cách làm tròn:
Lấy phần nguyên khi chia (làm tròn xuống). Phần dư (nếu có) được cộng vào nhóm Tiết kiệm & Đầu tư.
Cụ thể:
- Nhu cầu thiết yếu = ~\lfloor N \times 50 / 100 \rfloor~
- Mong muốn = ~\lfloor N \times 30 / 100 \rfloor~
- Tiết kiệm & Đầu tư = ~N~ - Nhu cầu thiết yếu - Mong muốn
Input
Dòng đầu tiên chứa số nguyên ~T~ ~(1 \le T \le 10^5)~ — số lượng test case.
Mỗi dòng trong ~T~ dòng tiếp theo chứa một số nguyên ~N~ ~(1 \le N \le 10^{15})~ — thu nhập sau thuế hàng tháng.
Output
Với mỗi test case, in ra một dòng gồm 3 số nguyên cách nhau bởi dấu cách: số tiền nhu cầu thiết yếu, số tiền mong muốn, số tiền tiết kiệm & đầu tư.
Ví dụ
Input
3
10000000
1000000
7
Output
5000000 3000000 2000000
500000 300000 200000
3 2 2
Giải thích
~N = 10\,000\,000~:
needs ~= 5\,000\,000~, wants ~= 3\,000\,000~, savings ~= 2\,000\,000~.~N = 7~:
needs ~= \lfloor 7 \times 50 / 100 \rfloor = 3~,
wants ~= \lfloor 7 \times 30 / 100 \rfloor = 2~,
savings ~= 7 - 3 - 2 = 2~.
Giới hạn
- ~1 \le T \le 10^5~
- ~1 \le N \le 10^{15}~
- Độ dài code không quá ~65536~ ký tự.
Bình luận