Editorial for C Bài 2.B2: Công chúa diệt rồng
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:
Hướng dẫn
Bài này nếu tinh ý, ta sẽ hiểu bài toán theo cách như sau: Cho 4 số nguyên dương \(a, b, c, x\). Hãy tìm xem trong các số từ 1 đến \(x\), có bao nhiêu số chia hết cho 1 trong 3 số \(a, b, c\).
Ý tưởng của bài này là ta sẽ sử dụng một vòng lặp để duyệt hết các số từ 1 đến \(n\), và từ đó đếm các số chia hết một trong 3 số \(a, b, c\).
Độ phức tạp của thuật toán này là \(O(x)\).
Code mẫu
#include <stdio.h>
int main() {
int a, b, c, x;
scanf("%d%d%d%d", &a, &b, &c, &x);
int res = 0;
for(int i = 1; i <= x; i++){
nếu số đang duyệt mà chia hết 1 trong 3 số a, b, c thì cộng kết quả thêm 1
if(i % a == 0 || i % b == 0 || i % c == 0){
res++;
}
}
printf("%d", res);
return 0;
}
Đă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