Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,36 @@
|
|||
output =
|
||||
println(format(fmt,
|
||||
[seqLength, initSeq, tailSeq] ++ toList(longestPair)
|
||||
))
|
||||
|
||||
fmt = """getSeq(27) (length): {}
|
||||
getSeq(27) (first 4): {}
|
||||
getSeq(27) (last 4): {}
|
||||
max length {} for n = {}"""
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
seq = getSeq(27)
|
||||
seqLength = length(seq)
|
||||
initSeq = take(4, seq)
|
||||
tailSeq = drop(seqLength - 4, seq)
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
longestPair =
|
||||
range(1, 99999)
|
||||
|> map(n => (length(getSeq(n)), n))
|
||||
|> argmax(at(0))
|
||||
|
||||
-----------------------------------------------------------
|
||||
-- generate full sequence
|
||||
|
||||
getSeq(n) =
|
||||
iterate(step, n)
|
||||
|> takeUntil(eq(1))
|
||||
|
||||
-----------------------------------------------------------
|
||||
-- get the next number in a sequence
|
||||
|
||||
step(n) =
|
||||
if n % 2 == 0 then round(n / 2) else n * 3 + 1
|
||||
Loading…
Add table
Add a link
Reference in a new issue