diff --git a/tasks/elementary/math/sum_of_two_equals_third.toml b/tasks/elementary/math/sum_of_two_equals_third.toml index f5df5c0..6f1f259 100644 --- a/tasks/elementary/math/sum_of_two_equals_third.toml +++ b/tasks/elementary/math/sum_of_two_equals_third.toml @@ -1,143 +1,197 @@ level = "easy" name = "sum_of_two_equals_third" tags = ["math", "collections"] -time_to_solve_sec = 300 +time_to_solve_sec = 60 description_en = """ -Given three integers `nums = [a, b, c]`, determine whether the sum of **two** of them equals the **third**. +Given three integers, determine whether the sum of two of them equals the third one. Return `True` if such a pair exists, otherwise return `False`. """ description_ru = """ -Даны три целых числа `nums = [a, b, c]`. Определите, существует ли пара чисел, сумма которых равна третьему. +Даны три целых числа. Определите, существует ли пара чисел, сумма которых равна третьему. Верните `True`, если такая пара существует, иначе `False`. """ limits = """ -- $-10^6 \\leq a,b,c \\leq 10^6$ +- $-10^9 \\leq x, y, z \\leq 10^9$ """ solution = """ -def solution(nums: list) -> bool: - nums.sort() - return nums[0] + nums[1] == nums[2] +def solution(x: int, y: int, z: int) -> bool: + return x + y == z or x + z == y or y + z == x """ examples = """ -solution([1, 2, 3]) == True -solution([3, 1, 3]) == False -solution([3, 1, 2]) == True +solution(3, 1, 2) == True +solution(2, 3, 4) == False +solution(-7, -2, 5) == True """ [[input_signature]] -argument_name = "nums" +argument_name = "x" +[input_signature.type] +name = "integer" + +[[input_signature]] +argument_name = "y" +[input_signature.type] +name = "integer" + +[[input_signature]] +argument_name = "z" [input_signature.type] -name = "array" -[input_signature.type.nested] name = "integer" [output_signature.type] name = "boolean" [[asserts]] -arguments = [[1, 2, 3]] +arguments = [3, 1, 2] expected = true [[asserts]] -arguments = [[5, 5, 10]] +arguments = [5, 5, 10] expected = true [[asserts]] -arguments = [[3, 7, 10]] +arguments = [3, 7, 10] expected = true [[asserts]] -arguments = [[10, 15, 25]] +arguments = [10, 25, 15] expected = true [[asserts]] -arguments = [[100, 200, 300]] +arguments = [-1, -2, -3] expected = true [[asserts]] -arguments = [[1000, 2000, 3000]] +arguments = [-5, 0, 5] expected = true [[asserts]] -arguments = [[50, 50, 100]] +arguments = [-7, -2, -5] expected = true [[asserts]] -arguments = [[123, 456, 579]] +arguments = [-7, -2, 5] expected = true [[asserts]] -arguments = [[1, 999, 1000]] +arguments = [-9, -7, -2] expected = true [[asserts]] -arguments = [[50000, 50000, 100000]] +arguments = [-7, -10, 3] expected = true +[[asserts]] +arguments = [8, -3, 5] +expected = true [[asserts]] -arguments = [[50571, 33109, 83680]] +arguments = [-4, -6, -10] expected = true [[asserts]] -arguments = [[1, 1, 3]] -expected = false +arguments = [0, 0, 0] +expected = true [[asserts]] -arguments = [[2, 2, 5]] +arguments = [11, 0, 11] +expected = true + +[[asserts]] +arguments = [-23, -23, 0] +expected = true + +[[asserts]] +arguments = [0, 0, 100] expected = false [[asserts]] -arguments = [[10, 20, 40]] +arguments = [-3, 8, -5] expected = false [[asserts]] -arguments = [[100, 200, 400]] +arguments = [-10, 15, 5] +expected = true + +[[asserts]] +arguments = [-2, 7, 9] +expected = true + +[[asserts]] +arguments = [10, -15, -5] +expected = true + +[[asserts]] +arguments = [20, -30, -10] +expected = true + +[[asserts]] +arguments = [-5, 3, -2] +expected = true + +[[asserts]] +arguments = [7, -12, -5] +expected = true + +[[asserts]] +arguments = [1, 1, 3] expected = false [[asserts]] -arguments = [[1000, 2000, 4000]] +arguments = [2, 2, 5] expected = false [[asserts]] -arguments = [[5000, 5000, 11000]] +arguments = [10, 20, 40] expected = false [[asserts]] -arguments = [[999, 999, 1999]] +arguments = [5372, 4396, 7179] expected = false [[asserts]] -arguments = [[5372, 4396, 7179]] +arguments = [58611, 74697, 89900] expected = false [[asserts]] -arguments = [[58611, 74697, 89900]] +arguments = [1, 2, 4] expected = false [[asserts]] -arguments = [[1, 2, 4]] +arguments = [7, 8, 16] expected = false [[asserts]] -arguments = [[7, 8, 16]] +arguments = [99, 100, 200] expected = false [[asserts]] -arguments = [[99, 100, 200]] +arguments = [1, 1, 1] expected = false [[asserts]] -arguments = [[1, 1, 1]] +arguments = [10000, 19999, 10000] expected = false [[asserts]] -arguments = [[10000, 10000, 19999]] +arguments = [1000000000, 1000000000, 2000000000] +expected = true + +[[asserts]] +arguments = [-1000000000, -2000000000, -1000000000] +expected = true + +[[asserts]] +arguments = [0, -1000000000, 1000000000] +expected = true + +[[asserts]] +arguments = [1000000000, 1, -1000000000] expected = false