Maison > Article > développement back-end > chiffres de hauts et de bas
Dans cet article, nous apprendrons ce qu'est un nombre fluctuant et présenterons notre méthode pour vérifier si un nombre donné est un nombre fluctuant, en utilisant une fonction booléenne pour vérifier le nombre fluctuant.
Nous recevrons un numéro et notre tâche est de vérifier si le numéro donné fluctue.
Commençons par comprendre le nombre de fluctuation ;
Un nombre fluctuant est un nombre composé de seulement deux types de nombres, tous les autres nombres étant identiques.On peut dire qu'un nombre fluctuant est de la forme "PQPQPQ" où P et Q sont deux nombres différents dans le système numérique.
Les premier et deuxième chiffres d'un nombre fluctuant ne peuvent jamais être les mêmes, c'est-à-dire que 11111 n'est pas un nombre fluctuant.
Nous considérons généralement les nombres fluctuants non triviaux comme de simples nombres fluctuants, ce qui signifie que les nombres fluctuants doivent être composés d'au moins 3 chiffres. Autrement dit, nous ne pouvons pas simplement utiliser deux nombres pour former un nombre fluctuant.
Considérons maintenant quelques exemples de nombres fluctuants -
494, 484, 474, 464, 454, 434, 424, 414, 404, 393, 383, 373, 363, 353, 343, 323, 313, 303, 101, 121, 131, 141, 161, , 171 , 181, 191, 202 et plus.
Certains nombres fluctuants de grande valeur sont - 1212121212, 3838383838, 57575757575757, etc.
Pour tout nombre à d chiffres, où d>=3 (d contient au moins 3 chiffres), on peut avoir 9 * 9 = 81 nombres fluctuants, puisque la première valeur (nombre de 1 à 9) a 9 options, de même pour le Option 9 (chiffres de 0 à 9, sauf le premier chiffre).
Solution
Il existe certaines restrictions concernant les nombres −
Given Number : Num = 252 Result: Yes, the number is undulating Given Number : Num = 64664 Result: =No, the number is not undulating
#include <bits/stdc++.h> using namespace std; // boolean function that checks // is the number undulating bool Is_number_undulating(string num){ // important to check // if first and second digit // are equal if (num.length() <= 2 || num[0]==num[1]) return false; for (int iterator = 2; iterator < num.length(); iterator++) if (num[iterator - 2] != num[iterator]) false; return true; } int main(){ string num = "111111"; if (Is_number_undulating(num)) cout << " Yes the number is undulating "; else cout << " No, the number is not undulating "; }Sortie
No, the number is not undulating
Complexité temporelle - Pour un nombre à n chiffres, la complexité temporelle est O(N).
Complexité spatiale - Puisqu'aucun espace externe n'est utilisé, la complexité de l'espace auxiliaire est O(N).
Dans cet article, nous comprenons en détail ce qu'est un nombre fluctuant et la solution de code pour vérifier si un nombre donné fluctue.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!