C++では偶数の0で構成されるN桁の数を数えます
入力として数値Nが与えられます。目標は、数字として偶数の0を持つすべてのN桁の数字を見つけることです。 N =3の場合のように、数値の前にゼロを付けることもできます。含まれる数値は001,002,003….010….soなどです。
例を挙げて理解しましょう。
入力 − 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を計算します。数字が偶数の残りの数字はT-O/2になります。
-
入力として整数Nを取ります。
-
関数count_even(int N)はNを取り、偶数が0のN桁の数値の数を返します。
-
合計N桁の数字はtotal=pow(10、N)-1
-
数字が奇数の合計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
-
C++でDで割り切れるN桁の数値を検索します
NとDの2つの数があるとします。Dで割り切れるN桁の数を見つける必要があります。Nが3で、Dが5の場合、数は500になります。これは簡単に解決できます。 Dが10でNが1の場合、それは不可能です。 Dを入れて、Dの桁数がmであると仮定し、N – m個の0を付けて、N桁の数でDで割り切れるようにします。 例 #include<iostream> using namespace std; string nDigitDivByD(int n, int d) { string ans = ""; if (d <
-
Pythonで偶数桁の数を検索する
番号のリストがあるとします。桁数が偶数の数を数える必要があります。したがって、配列が[12,345,2,6,7896]の場合、12と7896の桁数は偶数であるため、出力は2になります。 これを解決するには、次の手順に従います- リストを取得し、各整数を文字列に変換します 文字列の長さが偶数の場合は、カウントを増やし、最後にカウント値を返します 例 理解を深めるために、次の実装を見てみましょう- class Solution(object): def findNumbers(self, nums): str_num =