diff --git a/subjects/findpairs/README.md b/subjects/findpairs/README.md index 388829f86..e59c0027d 100644 --- a/subjects/findpairs/README.md +++ b/subjects/findpairs/README.md @@ -1,4 +1,4 @@ -## Find Pairs with Sum +## Find Pairs ### Instructions @@ -6,16 +6,18 @@ Write a program that finds all pairs of elements in an integer array that sum up In this exercise you must take in consideration the following: -- Ensure its possible to have positive or negative integers in the array -- Ensure each element is used only once in a pair -- Allow for multiple pairs to sum up to the target value -- Return the message "No pairs found." when no pair is present -- Return the message "Invalid target sum." if the target is invalid -- Return the message "Invalid number." if the number in the array is invalid +- Ensure it's possible to have positive or negative integers in the array. +- Ensure each element is used only once in a pair, although the element can be repeated in different pairs. +- Allow for multiple pairs to sum up to the target value. +- The output messages should follow the one given in the examples bellow. +- Return the message **"No pairs found."** when no pair is present. +- Return the message **"Invalid target sum."** if the target is invalid. +- Return the message **"Invalid number: "** if the number in the array is invalid. +- For any input format that deviates from the specified format `"[1, 2, 3, 4, 5]" "6"`, the program will return an "Invalid input." error message. Let's consider the input `arr = [1, 2, 3, 4, 5]` and the target sum `targetSum = 6`. When we run the program, the `findPairs()` function will search for pairs in the array that sum up to `targetSum`. -The expected output for this input will be: +Here is some example of outputs: ```console $ go run . "[1, 2, 3, 4, 5]" "6" @@ -24,9 +26,15 @@ $ go run . "[-1, 2, -3, 4, -5]" "1" Pairs with sum 1: [[0 1] [2 3]] $ go run . "[1, 2, 3, 4, 5]" "10" No pairs found. +$ go run . "[-1, -2, -3, -4, -5]" "-5" +Pairs with sum -5: [[0 3] [1 2]] $ go run . "[1, 2, 3, 4, 20, -4, 5]" "2 5" Invalid target sum. $ go run . "[1, 2, 3, 4, 20, p, 5]" "5" Invalid number: p +$ go run . "[1, 2, 3, 4" "5" +Invalid input. +$ go run . "1, 2, 3, 4" "5" +Invalid input. $ ```