Entrevista a los 150 mejoresfácil

Flujo de agua del Atlántico Pacífico

Guía detallada e implementación de Python para el problema 'Flujo de agua del Atlántico Pacífico'.

Declaración del problema

fácil

Hay una isla rectangular de mx n que limita tanto con el océano Pacífico como con el océano Atlántico. El Océano Pacífico toca los bordes superior e izquierdo de la isla, y el Océano Atlántico toca los bordes inferior y derecho de la isla.

La isla está dividida en una cuadrícula de celdas cuadradas. Se le proporciona una matriz de alturas enteras m x n donde alturas[r][c] representa la altura sobre el nivel del mar de la celda en la coordenada (r, c).

El agua de lluvia puede fluir hacia las celdas vecinas directamente al norte, sur, este y oeste si la altura de la celda vecina es menor o igual a la altura de la celda actual. El agua puede fluir desde cualquier célula adyacente a un océano hacia ese océano.

Devuelve una lista 2D de resultados de coordenadas de cuadrícula donde resultado[i] = [ri, ci] denota que el agua de lluvia puede fluir desde la celda (ri, ci) hacia los océanos Pacífico y Atlántico.

Escribe una función pacificAtlantic(heights: List[List[int]]) -> List[List[int]].

Restricciones
  • m == len(heights)
  • n == len(heights[0])
  • 1 <= m, n <= 200
  • 0 <= heights[i][j] <= 10^5

Ejemplos

Example 1
Input
heights = [[1,2,2,3,5],[3,2,3,4,4],[2,4,5,3,1],[6,7,1,4,5],[5,1,1,2,4]]
Output
[[0,4],[1,3],[1,4],[2,2],[3,0],[3,1],[4,0]]
Explanation

These coordinates can flow to both Pacific (via top/left) and Atlantic (via bottom/right) oceans.

Example 2
Input
heights = [[1]]
Output
[[0,0]]
Explanation

The single cell borders both oceans directly.

Need a Hint?
Considere la posibilidad de utilizar estructuras de datos específicas de Graphs, como conjuntos o montones.
Edge Cases to Watch
  • Estructuras de entrada vacías
  • Entradas de un solo elemento
  • Grandes límites numéricos

¿Listo para resolver?

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

Abrir en el editor
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

Recursos recomendados de Python

Amplíe sus conocimientos con tutoriales interactivos relacionados, hojas de trucos y comparaciones de códigos.