SH01-200

Cho số nguyên N. E hãy lập trình để thay thế các chữ số 0 trong biểu diễn thập phân của N thành chữ số 5

Mô tả đầu vào

Dòng 1 số nguyên T là số lượng bộ Test

T dòng tiếp theo mỗi dòng ghi số nguyên N

Ràng buộc

1\leq T\leq 10^51≤T≤10

5

0\leq N \leq 10^{12}0≤N≤10

12

Mô tả đầu ra

Theo yêu cầu đề ra.

Hướng dẫn:

• Tách từng chữ số của N nếu chữ số đó =0 thì thay thế bằng 5.

• Hoặc có thể dùng string để làm.

Test case mẫu

Đầu vào mẫu 1

4

1005

1234

9384

100

Đầu ra mẫu 1

1555

1234

9384

155

Giải = c++ nha mn

1 câu trả lời

Sử dụng số (long long)

#include <iostream>

#define ll long long
using namespace std;

int main () {
    ll t, n, r, mul;
    
    cin >> t;
    while (t--) {
        cin >> n; r = 0; mul = 1;
        while (n) {
            if (n % 10) r += (n % 10) * mul; else r += 5 * mul; 
            mul *= 10; n /= 10;
        }
        cout << r << "\n";
    }
    
    return 0;
}

Sử dụng xâu (string)

#include <iostream>
using namespace std;

int main () {
    int t;
    string n;
    
    cin >> t;
    while (t--) {
        cin >> n;
        for (char &c: n) 
            if (c == '0') c = '5';
        cout << n << "\n";
    }
    
    return 0;
}