Suma de dos

Tiempo límite 2 s
Memoria límite 256 MB
Casos de prueba 12
Dificultad Fácil Algoritmos
Mostrar (2) ArreglosTablas hash
Enviar solución

Puntos: 5

Tipos de problema
Lenguajes permitidos
C, C++, Java, Python, Rust

Dado un arreglo de enteros \(a_0, a_1, \dots, a_{n-1}\) y un entero \(t\), encuentra los dos índices \(i < j\) tales que \(a_i + a_j = t\). Se garantiza que hay exactamente un par de índices así.

Seguimiento: ¿puedes hacerlo en menos de \(O(n^2)\)? Los casos grandes lo exigen.

Entrada

La primera línea tiene \(n\) \((2 \le n \le 10^5)\) y \(t\) \((|t| \le 2 \cdot 10^9)\). La segunda tiene los \(n\) enteros \(a_i\) \((|a_i| \le 10^9)\).

Salida

Los índices \(i\) y \(j\) (contados desde \(0\)), con \(i < j\), separados por un espacio.

Ejemplo 1

Entrada

4 9
2 7 11 15

Salida

0 1

Ejemplo 2

Entrada

3 6
3 2 4

Salida

1 2

Ejemplo 3

Entrada

2 6
3 3

Salida

0 1

Basado en el problema 1 de LeetCode, Two Sum, adaptado a entrada y salida estándar; enunciado redactado para este juez. Es parte de la lista Grind 75 de Yangshun Tay.


Comentarios

No hay comentarios por el momento.