입력으로 숫자 N이 제공됩니다. 목표는 숫자로 0이 짝수인 N자리 숫자를 모두 찾는 것입니다. 또한 N=3인 경우 숫자가 001,002,003….010…
예를 들어 이해합시다.
입력 - N=4
출력 - 번호의 개수. 짝수 0으로 구성된 N 자리는 - 7047입니다.
설명 − 4자리 숫자는 모두 다음과 같습니다. −
Smallest will be 0000, then 0011,0012,0013,0014…..Highest will be 9900.
입력 - N=5
출력 - 번호의 개수. 짝수 0으로 구성된 N 자리는 - 66383입니다.
설명 − 5자리 숫자는 모두 다음과 같습니다. −
Smallest will be 00001, then 00002,00003,00004…..Highest will be 99900.
아래 프로그램에서 사용한 접근 방식은 다음과 같습니다.
먼저 T=10N-1인 총 N 자리 숫자를 계산합니다. 그런 다음 홀수 0이 있는 모든 N 자리 숫자를 숫자로 계산합니다. 즉, O=10N-8N 입니다. 짝수가 0인 나머지 숫자는 T-O/2가 됩니다.
-
정수 N을 입력으로 받습니다.
-
count_even(int N) 함수는 N을 받아서 짝수 0이 있는 N 자리 숫자의 개수를 반환합니다.
-
총 N자리 숫자는 total=pow(10,N)-1
입니다. -
홀수 0이 포함된 총 N자리 숫자는 odd=pow(10,N)-pow(8,N)입니다.
-
나머지 숫자 0은 even=total-odd/2입니다.
-
짝수가 0인 N자리 숫자의 개수로 짝수를 반환합니다.
예시
#include <bits/stdc++.h> using namespace std; int count_even(int N){ int total = pow(10, N) - 1; int odd = pow(10, N) - pow(8, N); int even = total - odd / 2; return even; } int main(){ int N = 3; cout<<"Count of Numbers with N digits which consists of even number of 0's are: "<<count_even(N); return 0; }
출력
위의 코드를 실행하면 다음과 같은 출력이 생성됩니다. -
Count of Numbers with N digits which consists of even number of 0's are: 755