150 najlepszych wywiadówŚredni

Suma docelowa

Szczegółowy przewodnik i implementacja Python dla problemu „Suma docelowa”.

Oświadczenie o problemie

Średni

Otrzymujesz tablicę liczb całkowitych nums i cel całkowity.

Chcesz zbudować wyrażenie na podstawie liczb, dodając jeden z symboli „+” i „-” przed każdą liczbą całkowitą w liczbach, a następnie połączyć wszystkie liczby całkowite.

Zwróć liczbę różnych wyrażeń, które możesz zbudować, a które w wyniku zostaną uznane za docelowe.

Napisz funkcję findTargetSumWays(nums: List[int], target: int) -> int.

Ograniczenia
  • 1 <= len(nums) <= 20
  • 0 <= nums[i] <= 1000
  • 0 <= sum(nums) <= 1000
  • -1000 <= target <= 1000

Przykłady

Example 1
Input
nums = [1,1,1,1,1], target = 3
Output
5
Explanation

There are 5 ways: -1+1+1+1+1, +1-1+1+1+1, +1+1-1+1+1, +1+1+1-1+1, +1+1+1+1-1.

Example 2
Input
nums = [1], target = 1
Output
1
Explanation

+1 = 1

Need a Hint?
Rozważ użycie struktur danych specyficznych dla 2D DP, takich jak zestawy lub sterty.
Edge Cases to Watch
  • Puste struktury wejściowe
  • Wejścia jednoelementowe
  • Duże granice liczbowe

Gotowy do rozwiązania?

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

Otwórz w Edytorze
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

Polecane zasoby Pythona

Poszerzaj swoją wiedzę dzięki powiązanym interaktywnym samouczkom, ściągawkom i porównaniom kodów.