Hướng dẫn cho Số có 3 chữ số


Chỉ sử dụng khi thực sự cần thiết như một cách tôn trọng tác giả và người viết hướng dẫn này.

Chép code từ bài hướng dẫn để nộp bài là hành vi có thể dẫn đến khóa tài khoản.

Authors: SPyofgame


Spoiler Alert


Approach 1

  • Để lấy \(k\) chữ số cuối của \(n\), ta lấy \(t \equiv n\) \((mod\) \(10^k)\) \(\Leftrightarrow\) \(t\) \(=\) \(n\) \(mod\) \(10^k\) (mod là phép chia lấy dư)

  • Để xóa \(k\) chữ số cuối của \(n\), ta lấy \(n = \lfloor\frac{n}{10^k}\rfloor\) \(\Leftrightarrow\) \(n\) \(=\) \(n\) \(div\) \(10^k\) (div là phép chia lấy nguyên)

  • Từ đó

Ta muốn lấy chữ số hàng đơn vị thì in ra \(n\) \(mod\) \(10\)

Ta muốn lấy chữ số hàng chục thì in ra \(\lfloor\frac{n}{10}\rfloor\) \(mod\) \(10\)

Ta muốn lấy chữ số hàng trăm thì in ra \(\lfloor\frac{n}{100}\rfloor\) \(mod\) \(10\)

Approach 2

  • Biểu diễn số kiểu xâu \(s\), ta sẽ xuất 3 kí tự cuối cùng của \(s\)


Bình luận


  • 0
    Truongkhaiminh    11:22 a.m. 28 Tháng 10, 2020

    thế này cũng được:

    include<iostream>

    using namespace std;
    int main(){
    int n;
    cin>>n;
    cout<<n/100<<endl;
    cout<<n/10%10<<endl;
    cout<<n%10<<endl;
    }