Menu
CoddyTech

Partition Equal Subset Sum

Ti viene fornito un array nums di interi positivi. Decidi se puoi dividere i valori in due gruppi con somme uguali. Ogni valore va in esattamente un gruppo e un gruppo può contenere valori provenienti da qualsiasi posizione. Restituisci true se esiste una divisione di questo tipo e false altrimenti.

Funzione

canPartition(nums: integer-array) → boolean
numsinteger-array
i valori positivi da dividere in due gruppi
Restituisceboolean
true quando i valori possono formare due gruppi con somme uguali, false altrimenti

Vincoli

  • 1 ≤ nums.length ≤ 200
  • 1 ≤ nums[i] ≤ 100

Esempi

Input
nums = [6, 1, 4, 9, 2]
Output
true
Spiegazione
Il totale è 22, quindi ogni gruppo deve avere 11. I gruppi 9 + 2 e 6 + 1 + 4 fanno entrambi 11, quindi la risposta è true.

lock icon+18 test nascosti all’invio

challenge icon

Per approfondire

Quando non esiste una suddivisione equa, puoi restituire la differenza più piccola possibile tra le somme dei due gruppi?

Ripristina il codice
def canPartition(nums):
    # Scrivi il codice qui
Casi di test

Caso 1

Caso 2

Caso 3

Input

nums = [6, 1, 4, 9, 2]

Atteso

true