En İyi 150 RöportajOrta

Farklı Alt Diziler

'Farklı Alt Diziler' sorunu için ayrıntılı kılavuz ve Python uygulaması.

Sorun Bildirimi

Orta

İki s ve t dizisi verildiğinde, s'nin t'ye eşit olan farklı alt dizilerinin sayısını döndürün.

Bir dizenin alt dizisi, orijinal dizeden, kalan karakterlerin göreceli konumlarını bozmadan bazı karakterlerin (hiçbiri olmayabilir) silinmesiyle oluşturulan yeni bir dizedir. (yani "ACE", "ABCDE"nin bir alt dizisidir, "AEC" ise değildir).

numDistinct(s: str, t: str) -> int adlı bir işlev yazın.

Kısıtlamalar
  • 1 <= len(s), len(t) <= 1000
  • s and t consist of English letters

Örnekler

Example 1
Input
s = "rabbbit", t = "rabbit"
Output
3
Explanation

There are 3 ways you can generate "rabbit" from s: **rab**b**bit**, **ra**b**bbit**, **rab**bb**it**.

Example 2
Input
s = "babgbag", t = "bag"
Output
5
Explanation

There are 5 ways you can generate "bag" from s.

Need a Hint?
Kümeler veya yığınlar gibi 2B DP'ye özgü veri yapılarını kullanmayı düşünün.
Edge Cases to Watch
  • Boş giriş yapıları
  • Tek eleman girişleri
  • Büyük sayısal sınırlar

Çözmeye Hazır mısınız?

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

Editörde Aç
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

Önerilen Python Kaynakları

İlgili etkileşimli eğitimler, yardımcı sayfalar ve kod karşılaştırmalarıyla bilginizi genişletin.