This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.
%I A332026 #26 Jun 07 2025 16:42:52 %S A332026 3,4,3,5,4,4,6,5,5,5,7,6,6,6,6,8,7,7,7,7,7,9,8,8,8,8,8,8,10,9,9,9,9,9, %T A332026 9,9,11,10,10,10,10,10,10,10,10,12,11,11,11,11,11,11,11,11,11,13,12, %U A332026 12,12,12,12,12,12,12,12 %N A332026 Savannah problem: number of new possibilities after n weeks. %C A332026 The Savannah math problem (_Ali Sada_, 26 Dec 2019 email to Seqfan list) is about a savannah ecosystem consisting of zebras, fed lions and hungry lions. Assume we start with an empty savannah. Each week, the following things happen in this order: %C A332026 1. All hungry lions (if any) die. %C A332026 2. All fed lions (if any) become hungry. %C A332026 3. One animal enters the savannah. This can be a zebra, a fed lion or a hungry lion. %C A332026 4. Let m = min(number of zebras, number of hungry lions); then m hungry lions eat m zebras and become m fed lions. %C A332026 The Savannah math problem is to determine how many distinct populations are possible after n weeks. %C A332026 After step 4, there are either zero zebras or zero hungry lions (or both). Therefore, all possible populations can be positioned in a two-dimensional table, with the number of zebras on the positive part of one axis, the number of hungry lions on the negative part of the same axis and the total number of lions on the other axis (thus, a hungry lion is a lion with a deficit of one zebra). Tabulating the minimum number of weeks in which each population can occur, we get: %C A332026 zebras %C A332026 8 | 8 9 11 14 18 %C A332026 7 | 7 8 10 13 17 %C A332026 6 | 6 7 9 12 16 %C A332026 5 | 5 6 8 11 15 %C A332026 4 | 4 5 7 10 14 %C A332026 3 | 3 4 6 9 13 %C A332026 2 | 2 3 5 8 12 %C A332026 1 | 1 2 4 7 11 %C A332026 0 | 0 1 3 6 10 %C A332026 -1 | 1 2 5 9 %C A332026 -2 | 2 4 8 %C A332026 -3 | 4 7 %C A332026 -4 | 7 %C A332026 +------------------------------ %C A332026 0 1 2 3 4 lions %C A332026 A(n) is the number of n's in a sufficiently large version of this table. %C A332026 The row for Z=0 is equal to the sequence of triangular numbers (A000217). %C A332026 The number of columns with new entries in week n is the integer inverse of triangular number (A002024) plus 1. The number of new entries in week n is usually the number of columns, except when n is a triangular number plus 1; then a new column is started and the number of new entries is the number of columns plus 1. %F A332026 a(n) = A002024(n) + A010054(n) + 1. %e A332026 After one week, there are 3 possible populations, depending on which animal entered the savannah: one zebra (Z), one fed lion (F), one hungry lion (H). After two weeks, from Z we get: 2Z, ZF, and (ZH->) F; from F (which becomes H in the second step) we get: (ZH->) F, FH and 2H. From H (which becomes the empty set in the first step): Z, F and H. Overall, there are 4 new possible populations that were not possible after the first week: 2Z, ZF, FH, and 2H. %o A332026 (Python) %o A332026 from math import isqrt %o A332026 from sympy.ntheory.primetest import is_square %o A332026 def A332026(n): return (isqrt(m:=n<<3)+1>>1)+is_square(m-7)+1 # _Chai Wah Wu_, Jun 07 2025 %Y A332026 Cf. A002024, A010054. %Y A332026 See A332027 and A332028 for the total number of possibilities. %K A332026 nonn %O A332026 1,1 %A A332026 _Jan Ritsema van Eck_ and _Ali Sada_, Feb 05 2020