Đế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


  • 0
    enoughtodie99  commented on Feb. 27, 2019, 7:46 a.m.

    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


  • 0
    TICHPX  commented on Dec. 14, 2018, 9:12 a.m.

    Định nộp bằng python cái mà tác giả không cho dùng


  • 1
    TICHPX  commented on Dec. 14, 2018, 9:01 a.m.

    Bài này ôn tập về tập hợp được đấy nhỉ