Dada una array de enteros y un número ‘suma’, encuentra el número de pares de enteros en la array cuya suma es igual a ‘suma’.
Ejemplos:
Input : arr[] = {1, 5, 7, -1}, sum = 6 Output : 2 Pairs with sum 6 are (1, 5) and (7, -1) Input : arr[] = {1, 5, 7, -1, 5}, sum = 6 Output : 3 Pairs with sum 6 are (1, 5), (7, -1) & (1, 5) Input : arr[] = {1, 1, 1, 1}, sum = 2 Output : 6 There are 3! pairs with sum 2. Input : arr[] = {10, 12, 10, 15, -1, 7, 6, 5, 4, 2, 1, 1, 1}, sum = 11 Output : 9
Complejidad del tiempo esperado O(n)
Solución ingenua: una solución simple es recorrer cada elemento y verificar si hay otro número en la array que se pueda agregar para dar la suma.
PHP
<?php // PHP implementation of simple // method to find count of // pairs with given sum. // Returns number of pairs in // arr[0..n-1] with sum equal // to 'sum' function getPairsCount($arr, $n, $sum) { // Initialize result $count = 0; // Consider all possible pairs // and check their sums for ($i = 0; $i < $n; $i++) for ($j = $i + 1; $j < $n; $j++) if ($arr[$i] + $arr[$j] == $sum) $count++; return $count; } // Driver Code $arr = array(1, 5, 7, -1, 5) ; $n = sizeof($arr); $sum = 6; echo "Count of pairs is " , getPairsCount($arr, $n, $sum); // This code is contributed by nitin mittal. ?>
Producción
Count of pairs is 3
Tiempo Complejidad: O(n 2 )
Espacio Auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA