Talk:Two sum: Difference between revisions

From Rosetta Code
Content added Content deleted
Line 21: Line 21:


  -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 01:17, 23 September 2017 (UTC)
  -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 01:17, 23 September 2017 (UTC)
:I updated the task. The assumption that the integers are positive (or non-negative) is absolutely not necessary. Also, that integers are "single" (unique?) does not guarantee a unique solution, so it's useless. For instance, look for the sum 9 in (1,2,7,8). And to see negative integers don't hurt, just add 1-min(a) to the array 'a', and add twice this number to the target. Actually, one could do the same with non-integers, but it would introduce unnecessary difficulties (floating-point is not exact, hence one can't rely on equality comparison). [[User:Eoraptor|Eoraptor]] ([[User talk:Eoraptor|talk]]) 15:15, 4 December 2017 (UTC)

Revision as of 15:15, 4 December 2017

Some ambiguities (inappropriate return type)

What if there is more then one way to get the desired sum? Should it return all of the pairs or only a pair? Are we to assume the integers in the array are unique? --Thundergnat (talk) 22:21, 4 October 2016 (UTC)

What if there is no solution ? E.g. when all numbers in the list are even, and the desired sum is odd. -- Hajo (talk) 13:53, 5 October 2016 (UTC)

One way of putting it is that the proposed return type (list of integers [Int]) is not quite right yet. The structure of the problem would be more clearly expressed by requiring the return of a list of pairs of integers

[(Int, Int)]

i.e. Returning an empty list where no solutions are found, and a list of more than one integer pair where multiple solutions are found.

The English formulation of the task may also need a slight tweak – the phrase "If so, return indices of the two integers" skips a bit heavily over the thin ice – it seems to express an assumption that any solution would necessarily be unique. Hout (talk) 07:55, 17 October 2016 (UTC)

(from the task description) Given a sorted array of positive integers ...

Given that the example list is an ordered list (of positive integers),   then why is   zero   included in the array?   -- Gerard Schildberger (talk) 03:17, 19 January 2017 (UTC)

Will either the mention of   positive integers   be amended, or will the list of given numbers be changed   (hopefully before the draft task gets promoted)?

Since everybody has already used the example list   (that contains a non-positive integer, namely zero),   it would probably be easier to change it to:

  ... Given a sorted array of non-negative integers ...

  -- Gerard Schildberger (talk) 01:17, 23 September 2017 (UTC)

I updated the task. The assumption that the integers are positive (or non-negative) is absolutely not necessary. Also, that integers are "single" (unique?) does not guarantee a unique solution, so it's useless. For instance, look for the sum 9 in (1,2,7,8). And to see negative integers don't hurt, just add 1-min(a) to the array 'a', and add twice this number to the target. Actually, one could do the same with non-integers, but it would introduce unnecessary difficulties (floating-point is not exact, hence one can't rely on equality comparison). Eoraptor (talk) 15:15, 4 December 2017 (UTC)