Top 150 des entrevuesFacile

Régions environnantes

Guide détaillé et implémentation de Python pour le problème « Régions environnantes ».

Énoncé du problème

Facile

Étant donné une carte matricielle m x n contenant « X » et « O », capturez toutes les régions entourées dans 4 directions par « X ».

Une région est capturée en retournant tous les « O » en « X » dans cette région entourée.

Écrivez une fonction solve(board: List[List[str]]) -> List[List[str]] qui renvoie la carte modifiée.

Contraintes
  • m == len(board)
  • n == len(board[i])
  • 1 <= m, n <= 200
  • board[i][j] is 'X' or 'O'

Exemples

Example 1
Input
board = [["X","X","X","X"],["X","O","O","X"],["X","X","O","X"],["X","O","X","X"]]
Output
[["X","X","X","X"],["X","X","X","X"],["X","X","X","X"],["X","O","X","X"]]
Explanation

Surrounded regions should not be on the border, which means any 'O' on the border of the board is not flipped to 'X'. Any 'O' that is connected to a border 'O' is also not flipped.

Need a Hint?
Pensez à utiliser des structures de données spécifiques à Graphs, telles que 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.