Wawancara 150 TeratasMudah

Berenang Di Air Yang Meningkat

Panduan rinci dan implementasi Python untuk masalah 'Berenang di Air Meningkat'.

Pernyataan Masalah

Mudah

Anda diberikan kisi matriks bilangan bulat nxn di mana setiap nilai kisi[i][j] mewakili ketinggian pada titik tersebut (i, j). Hujan mulai turun. Pada waktu t, kedalaman air dimana-mana adalah t. Anda dapat berenang dari suatu kotak ke kotak lain yang berdekatan dalam 4 arah jika dan hanya jika kedua ketinggian dalam kotak tersebut paling banyak t.

Anda mulai dari kotak kiri atas (0, 0). Berapa waktu paling singkat sampai kamu dapat mencapai kotak kanan bawah (n-1, n-1)?

Tulis fungsi swimInWater(grid: List[List[int]]) -> int.

Kendala
  • n == len(grid) == len(grid[i])
  • 1 <= n <= 50
  • 0 <= grid[i][j] < n^2
  • Each value grid[i][j] is unique

Contoh

Example 1
Input
grid = [[0,2],[1,3]]
Output
3
Explanation

At time 3, you are permitted to swim all the way from (0,0) to (1,1). The path is 0 -> 1 -> 3.

Example 2
Input
grid = [[0,1,2,3,4],[24,23,22,21,5],[12,13,14,15,16],[11,17,18,19,20],[10,9,8,7,6]]
Output
16
Explanation

The final path is 0-1-2-3-4-5-16-15-14-13-12-11-10-9-8-7-6. The maximum height along this path is 16.

Need a Hint?
Pertimbangkan untuk menggunakan struktur data khusus Grafik Tingkat Lanjut seperti kumpulan atau tumpukan.
Edge Cases to Watch
  • Struktur masukan kosong
  • Masukan elemen tunggal
  • Batasan angka yang besar

Siap Memecahkannya?

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

Buka di 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

Sumber Daya Python yang Direkomendasikan

Perluas pengetahuan Anda dengan tutorial interaktif terkait, lembar contekan, dan perbandingan kode.