Editorial for C bài 13.D6: Tham gia học lập trình
Remember to use this editorial only when stuck, and not to copy-paste code from it. Please be respectful to the problem author and editorialist.
Submitting an official solution before solving the problem yourself is a bannable offence.
Submitting an official solution before solving the problem yourself is a bannable offence.
Author:
Lời giải chi tiết
Ý tưởng chính:
- Sử dụng việc liệt kê tất cả các tổ hợp các bài toán có thể giải, bằng cách sử dụng bitmasking để biểu diễn các tổ hợp này. Mỗi bit trong một số nguyên sẽ đại diện cho việc giải hết tất cả các bài toán của một phần (ví dụ: bit 0 đại diện cho tất cả các bài toán có điểm 100, bit 1 đại diện cho tất cả các bài toán có điểm 200, v.v.).
- Với mỗi tổ hợp, tính tổng điểm đạt được và số lượng bài toán cần giải. Nếu tổng điểm đạt được từ tổ hợp đó lớn hơn hoặc bằng \(G\), cập nhật số lượng bài toán ít nhất.
- Nếu tổng điểm của một tổ hợp không đủ để đạt \(G\), cần giải thêm các bài toán từ phần có điểm cao nhất chưa được giải hết.
Đăng ký khóa học: https://www.facebook.com/clblaptrinhfullhouse
SĐT liên hệ: 0372229686
Youtube: CLB Lập Trình Full House
Fullhouse dev đồng hành trên từng dòng code
Comments