2

我需要从一串数字中找到一个缺失的数字

4 8 12 16 __ 24。

我需要找到丢失的号码。我将如何以编程方式做到这一点?

数字和缺失的位置不是静态的,所以它们应该能够改变。

希望这是可能的。

4

2 回答 2

2

你可以像这个愚蠢的例子一样使用一些愚蠢的 linq :)

var numbers = new List<int>{4, 8, 12, 16, 24, 28, 36};
int first = numbers.First();
int last = numbers.Last();

var missing = Enumerable.Range(first, last).Where(n => n % first == 0).Except(numbers);


Returns:
20
32

-为反对票做好准备-

于 2013-07-12T01:40:43.397 回答
1

如果您知道它始终是算术级数,则可以使用以下公式:

an = a1 + (n - 1) * d

作为 a1 第一个元素, d 2个元素之间的差异和 n 要计算的位置,在您的情况下:

an = 4 + (5 - 1) * 4 = 20

检查这个:https ://en.wikipedia.org/wiki/Arithmetic_progression

于 2013-07-12T01:08:37.437 回答