Maison  >  Article  >  développement back-end  >  chiffres de hauts et de bas

chiffres de hauts et de bas

WBOY
WBOYavant
2023-08-28 13:41:061267parcourir

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.

Énoncé du problème

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

Nous avons un numéro et notre tâche est de savoir s'il a des hauts et des bas.

Il existe certaines restrictions concernant les nombres −

  • Il ne contient que deux types de nombres.

  • Deux nombres ne peuvent pas être identiques.

  • Contient au moins 3 chiffres

  • Les numéros adjacents dans les chiffres ne sont pas les mêmes.

Exemple

Given Number : Num = 252
Result: Yes, the number is undulating
Given Number : Num = 64664
Result: =No, the number is not undulating

Exemple

Dans l'exemple ci-dessous, nous vérifions si le nombre donné est un nombre fluctuant. Nous avons démontré en utilisant un nombre qui n’était pas un nombre fluctuant. Vous pouvez essayer différents nombres pour vérifier si le nombre est un nombre fluctuant.

#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

Lorsque vous exécutez le programme C++ ci-dessus, il produira le résultat suivant : 

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer