Hướng dẫn giải của Đếm (THCS KS2)


Chỉ dùng lời giải này khi không có ý tưởng, và đừng copy-paste code từ lời giải này. Hãy tôn trọng người ra đề và người viết lời giải.
Nộp một lời giải chính thức trước khi tự giải là một hành động có thể bị ban.

Hướng dẫn giải

Cho hai số nguyên dương N và x (x < N). Đếm số nguyên dương không lớn hơn N mà không chia hết cho x.

Cách làm

Trong các số từ 1 đến N, số chia hết cho x có đúng N / x số (phép chia lấy phần nguyên). Vì vậy số không chia hết cho x bằng N - N / x.

Bẫy: N có thể lên tới 10^18 nên dùng long long. Ví dụ N = 10, x = 3: có 3 số chia hết cho 3 (3, 6, 9) nên đáp số là 10 - 3 = 7.

#include <bits/stdc++.h>
using namespace std;

int main() {
    // N có thể lên tới 10^18 nên dùng long long
    long long n, x;
    cin >> n >> x;
    // Trong các số từ 1 đến n, số chia hết cho x có đúng n / x số
    long long chiahet = n / x;
    // Số không chia hết cho x = tổng số - số chia hết
    cout << n - chiahet << "\n";
    return 0;
}

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.