Project Euler Problem 14

by michiganfootball20

HTML

<div id="answer"></div>

JavaScript

$(document).ready(function () {
    collatz_array = [];
    collatz_array[1] = 1;


    Array.max = function (array) {
        return Math.max.apply(Math, array);
    };

    function collatz_length(num) {
        if (collatz_array[num] === undefined) {
            if (num % 2 === 0) {
                collatz_array[num] = collatz_length(num / 2) + 1;
                return collatz_array[num];
            } else {
                collatz_array[num] = collatz_length(3 * num + 1) + 1;
                return collatz_array[num];
            }

        } else return collatz_array[num];
    }

    function longest_collatz(num) {
        for (i = 1; i < num; i++) {
            collatz_length(i);
        }
        max = 0; num = 0;
        for (var number in collatz_array) {
            if (collatz_array[number] > max) {
                max = collatz_array[number];
                num = number;
            }
        }
        //console.log(collatz_array);
        return num;
    }


    //$('#answer').html(longest_collatz(1000000));

    //console.log(collatz_array);

});