Menu
CoddyTech

Two Sum

FacileHashingpython iconjava iconcpp iconc iconjs icon+10

Ti viene fornito un array di numeri interi nums e un numero intero target. Esattamente due elementi di nums, in due posizioni diverse, sommati danno target. Restituisci gli indici di quei due elementi, con l'indice più piccolo per primo.

Funzione

twoSum(nums: integer-array, target: integer) → integer-array
numsinteger-array
l’array di interi in cui cercare
targetinteger
la somma deve raggiungere i due valori
Restituisceinteger-array
i due indici, prima quello più piccolo

Vincoli

  • 2 ≤ nums.length ≤ 104
  • -109 ≤ nums[i] ≤ 109
  • -109 ≤ target ≤ 109
  • Esattamente una coppia di posizioni distinte ha come somma target.

Esempi

Input
nums = [3, 8, 12, 5]target = 17
Output
[2, 3]
Spiegazione
12 si trova all'indice 2 e 5 all'indice 3, e 12 + 5 = 17. Nessun'altra coppia raggiunge 17.
challenge icon

Per approfondire

Se nums fosse già arrivato ordinato, riusciresti a trovare la coppia in tempo O(n) usando solo O(1) di memoria aggiuntiva?

Ripristina il codice
def twoSum(nums, target):
    # Scrivi il codice qui

Test #1

Test #2

Test #3

Argomenti

nums = [3, 8, 12, 5]
target = 17

Output atteso

[2, 3]