Nous devons trouver le nombre de chiffres dans le nième nombre composé de quatre chiffres 1, 2, 3 et 4.
La série avec les quatre chiffres ci-dessus est la suivante
1, 2, 3, 4, 11, 12, 13, 14, 21, 22, 23, 24...
Nous devons trouver le nombre de chiffres du nième nombre de la série ci-dessus. Si vous observez attentivement le modèle, vous découvrirez les points suivants.
Il y a 4 nombres avec les chiffres 1.
Il y a 16 nombres avec les chiffres 2.
Le modèle continue avec les puissances de 4. .
Voyons un exemple
Entrée
7
Sortie
2
Le 7ème nombre de la série est 13 et le nombre de chiffres qu'elle contient est 2.
Voici l'implémentation de l'algorithme ci-dessus en C++
#include <bits/stdc++.h> using namespace std; int getDigitsCount(int n) { int i, result = 1, sum = 0; for (i = 4; ; i *= 4) { sum += i; if (sum >= n) { break; } result += 1; } return result; } int main() { int n = 57; cout << getDigitsCount(n) << endl; return 0; }
如果你运行上述代码,你将得到以下结果。
3
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!