Heremietkreeften gebruiken voor hun eigen bescherming schelpen die andere dieren hebben weggegooid. Naarmate ze groeien, moeten de kreeften steeds op zoek naar grotere schelpen. Dit levert een merkwaardig verschijnsel op: als een kreeft een verlaten schelp vindt die te groot voor hem is, dan blijft hij gewoon naast die schelp wachten tot er zich andere kreeften rond de schelp beginnen te verzamelen. Hierdoor vormt zich een polonaise van ontevreden schelpbewoners. Als er uiteindelijk een "Goudlokjes"-kreeft bij de groep aansluit — een kreeft die groot genoeg is om in de verlaten schelp in te trekken — dan kan elke wachtende kreeft verhuizen naar de schelp die zijn grotere buur net heeft verlaten. Zo haalt de hele soort haar voordeel uit de samenwerking om schaarse goederen te delen.

Hetzelfde fenomeen doet zich ook voor bij mensen — wanneer één persoon een nieuw appartement, een nieuwe wagen of een nieuwe job vindt, dan laat hij een oude achter die aan een opvolger in de maatschappij wordt doorgegeven, totdat wat laatst overblijft uiteindelijk wordt weggegooid of vernietigd. In de sociologie wordt dit aangeduid met de Engelse term vacancy chain.

Opgave

In deze opgave werken we met reeksen getallen die de groottes van schelpen voorstellen. Een reeks opeenvolgende gehele getallen is een reeks van $$n$$ gehele getallen $$a_1, a_2, \ldots, a_n$$ waarvoor geldt dat $$a_i + 1 = a_{i + 1} ( i = 1, \ldots, n - 1)$$. Gevraagd wordt:

Voorbeeld

>>> opeenvolgend([7, 5, 4, 9, 6, 3, 8])
True
>>> opeenvolgend((16, 13, 18, 17, 15, 14, 20))
False
>>> opeenvolgend((3, 4, 1, 6, 8, 7))
False

>>> goudlokje([7, 5, 4, 9, 6, 3, 8])
>>> goudlokje((16, 13, 18, 17, 15, 14, 20))
19
>>> goudlokje((3, 4, 1, 6, 8, 7))

>>> verhuizen1([7, 5, 4, 9, 6, 3, 8])
[7, 5, 4, 9, 6, 3, 8]
>>> verhuizen1((16, 13, 18, 17, 15, 14, 20))
[16, 13, 18, 17, 15, 14, 20, 19]
>>> verhuizen1((3, 4, 1, 6, 8, 7))
[3, 4, 1, 6, 8, 7]

>>> schelpen = [7, 5, 4, 9, 6, 3, 8]
>>> verhuizen2(schelpen)
>>> schelpen
[7, 5, 4, 9, 6, 3, 8]

>>> schelpen = [16, 13, 18, 17, 15, 14, 20]
>>> verhuizen2(schelpen)
>>> schelpen
[16, 13, 18, 17, 15, 14, 20, 19]

>>> schelpen = [3, 4, 1, 6, 8, 7]
>>> verhuizen2(schelpen)
>>> schelpen
[3, 4, 1, 6, 8, 7]