Đếm số ước
Submit solution
Points:
2 (partial)
Time limit:
0.8s
Python 3
1.0s
Memory limit:
10M
Python 3
98M
Author:
Problem type
Allowed languages
C++, C11, DART, F95, GAS32, Itercal, java, kotlin, LEAN, LISP, MONOVB, PIKE, prolog, Python, RUST, SWIFT, TUR, V8JS, VB, ZIG
Nhập vào 1 số \(N\) yêu cầu đếm các số từ 1 tới \(N\) mà chia hết cho hoặc 3, hoặc 5, hoặc 7.
Input
- Dòng đầu chứa số nguyên T là số test (\(1 <= T <= 100000 \))
- T dòng tiếp theo mỗi dòng chứa 1 số nguyên, dòng thứ i là số \(A[i]\) (\( 1 <= A[i] <= 1000000000000\))
Output
- Dòng thứ i là số các số từ 1 tới A[i] mà chia hết cho hoặc 3, hoặc 5, hoặc 7.
Example
Input:
3 10 592 1000
Output:
6 321 543
Comments
printf("%lld\n", x/3 + x/5 + x/7 - (x/15 + x/21 + x/35) + x/105);
Tách dần ra: số số chia hết cho 3 + số số chia hết cho 5 + số số chia hết cho 7 và phải trừ đi số số trùng khi chia hết cho cả 3 5, 3 7, 5 7 và cộng với số số chia hết cho cả 3,5,7
trừ x/105 chứ
cộng nhé vì cái trừ 3 5 3 7 5 7 đã trừ hết rồi
thanks
Định nộp bằng python cái mà tác giả không cho dùng
Bài này ôn tập về tập hợp được đấy nhỉ
cho lên 10^18 nhé thầy :D