Python BasesFacile

Nombres binaires à N bits

Guide détaillé et implémentation de Python pour le problème des « nombres binaires à N bits ».

Énoncé du problème

Facile

Écrivez une fonction n_bit_binary(n) qui génère tous les nombres binaires de n bits (sous forme de chaînes) de telle sorte que dans chaque préfixe de la chaîne binaire, le nombre de 1 soit supérieur ou égal au nombre de 0. Renvoie le résultat sous forme de liste triée de chaînes par ordre lexicographique.

Contraintes
  • 1 <= n <= 15

Exemples

Example 1
Input
n = 3
Output
['110', '111']
Explanation

For '110': prefixes '1'(1>=0✓), '11'(2>=0✓), '110'(2>=1✓). For '111': all prefixes have more 1s. '100','101','010' etc. fail the prefix condition.

Example 2
Input
n = 2
Output
['10', '11']
Explanation

'10': prefix '1' has 1>=0✓, '10' has 1>=1✓. '11': both prefixes valid. '00','01' fail.

Example 3
Input
n = 1
Output
['1']
Explanation

Only '1' satisfies the condition. '0' has prefix '0' with 0 ones and 1 zero.

Need a Hint?
Pensez à utiliser des structures de données spécifiques à la récursion, comme des ensembles ou des tas.
Edge Cases to Watch
  • Structures d'entrée vides
  • Entrées à élément unique
  • Grandes limites numériques

Prêt à résoudre ?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Ouvrir dans l'éditeur
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Ressources Python recommandées

Développez vos connaissances avec des didacticiels interactifs, des aide-mémoire et des comparaisons de codes associés.