Chúng tôi được cung cấp một số N làm đầu vào. Mục đích là để tìm tất cả N số chữ số có một số lẻ là 0 là chữ số. Số cũng có thể có các số không đứng trước như trong trường hợp N =3 số được bao gồm sẽ là 000.011.012… .990.
Hãy cho chúng tôi hiểu với các ví dụ.
Đầu vào - N =3
Đầu ra - Số lượng không. với N chữ số bao gồm số chẵn của 0 là - 244
Giải thích - Tất cả các số có 3 chữ số sẽ giống như -
Smallest will be 000, then 011,012,013,0014…..Highest will be 990.
Đầu vào - N =5
Đầu ra - Số lượng không. với N chữ số bao gồm số chẵn của 0 là - 33616
Giải thích - Tất cả các số có 5 chữ số sẽ giống như -
Smallest will be 00000, then 00011,00012,00013,0014…..Highest will be 99990.
Cách tiếp cận được sử dụng trong chương trình dưới đây như sau
Đầu tiên chúng ta sẽ tính tổng N số chữ số là T =10N-1. Sau đó tính tất cả N các số có chữ số chẵn 0 là chữ số, đó là E =10N-8N. Các số còn lại có chữ số Odd0 sẽ là (T-E) / 2.
-
Lấy một số nguyên N làm đầu vào.
-
Hàm count_dd (int N) nhận N và trả về tổng số N chữ số với số 0 lẻ.
-
Tổng số N chữ số là tổng =pow (10, N) -1
-
Tổng N số chữ số có chữ số 0 chẵn là chữ số chẵn =pow (10, N) -pow (8, N).
-
Các chữ số 0 lẻ còn lại trong chữ số là số lẻ =(tổng-chẵn) / 2.
-
Trả về số lẻ dưới dạng tổng số N chữ số với các số lẻ là 0.
Ví dụ
#include <bits/stdc++.h> using namespace std; int count_odd(int N){ int total = pow(10, N); int even = pow(8, N); int odd = (total - even) / 2; return odd; } int main(){ int N = 4; cout<<"Count of Numbers with N digits which consists of odd number of 0's are: "<<count_odd(N); return 0; }
Đầu ra
Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau -
Count of Numbers with N digits which consists of odd number of 0's are: 2952