Python Dasar-dasarMudah

Hitung kemungkinan penguraian kode urutan digit tertentu

Panduan terperinci dan implementasi Python untuk masalah 'Hitungan kemungkinan penguraian urutan digit tertentu'.

Pernyataan Masalah

Mudah

Tulis fungsi count_decodings(digits) yang mengambil serangkaian digit dan mengembalikan sejumlah kemungkinan cara untuk memecahkan kodenya, dengan 'A' = 1, 'B' = 2, ..., 'Z' = 26.

Misalnya, '12' dapat diterjemahkan sebagai 'AB' (1, 2) atau 'L' (12), memberikan 2 cara.

Jika string berisi '0' di posisi yang tidak valid (misalnya, di awalan '0' atau '30'), jalur tersebut tidak valid dan tidak boleh dihitung.

Kendala
  • 1 <= len(digits) <= 20
  • digits contains only characters '0' through '9'

Contoh

Example 1
Input
count_decodings('12')
Output
2
Explanation

'12' can be decoded as 'AB' (1,2) or 'L' (12). So 2 ways.

Example 2
Input
count_decodings('226')
Output
3
Explanation

'226' can be decoded as 'BBF' (2,2,6), 'BZ' (2,26), or 'VF' (22,6). So 3 ways.

Example 3
Input
count_decodings('06')
Output
0
Explanation

'06' cannot be decoded because '0' has no letter mapping and '06' is not a valid code.

Need a Hint?
Pertimbangkan untuk menggunakan struktur data khusus Numbers 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.