Editorial for C Bài 4.B1: Thừa số nguyên tố
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
Đây là một bài toán cơ bản về phân tích thừa số nguyên tố.
Ý tưởng: Duyệt \(i\) từ 1 đến \(a\). Với mỗi lần \(a\) chia hết cho \(i\), ta tăng giá trị đếm các thừa số nguyên tố thêm 1, đồng thời chia bớt \(a\) cho \(i\). Duyệt đến khi nào \(a\) < \(i\) thì kiểm tra nếu \(a\) > 1 thì cộng thêm biến đếm thêm 1, sau đó in ra kết quả.
Lưu ý: \(a\) có thể chia được cho nhiều số \(i\) cùng lúc. Ví dụ: 9 chia được cho 2 số 3.
Các bước giải:
- Bước 1: Khai báo và nhập vào số \(q\) thể hiện số truy vấn, sau đó chạy truy vấn.
- Bước 2: Khai báo và nhập vào số \(a\). Sau đó khai báo và đặt số nguyên
res
= 0. - Bước 3: Sử dụng vòng lặp để duyệt từ 1 đến \(a\) với biến \(i\). Mỗi lần \(a\) chia hết cho \(i\), ta tăng giá trị của
res
thêm 1, đồng thời lấy \(a\) chia \(i\). Ta có thể chia nhiều lần \(i\) nhất định cho \(a\). - Bước 4: Tiếp tục duyệt cho tới khi nào \(a < i\) thì kiểm tra xem \(a\) có lớn hơn 1 không, nếu có thì cộng biến
res
thêm 1, sau đó kết thúc vòng lặp. - Bước 5: In ra biến
res
là kết quả cần tìm. - Bước 6: Xuống dòng để tiếp tục với các truy vấn sau đó.
Đă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