This problem is a harder version of "Problem 44448. Project Euler: Problem 14 Longest Collatz sequence", because of time limits. https://ww2.mathworks.cn/matlabcentral/cody/problems/44448
The following iterative sequence is defined for the set of positive integers: n → n/2 (n is even) n → 3n + 1 (n is odd) Using the rule above and starting with 13, we generate the following sequence: 13 → 40 → 20 → 10 → 5 → 16 → 8 → 4 → 2 → 1 It can be seen that this sequence (starting at 13 and finishing at 1) contains 10 terms. Although it has not been proved yet (Collatz Problem), it is thought that all starting numbers finish at 1. Which starting number, no more than N, produces the longest chain, and how long? Don't cheat!
@ Binbin Qi
Why not setting the upper time limit?
What is the running time of your solution on cody computer?
@Binbin Qi
Please print the variable "t" to help to profile.
@li haitao, I have fix the code, and you should see my running time.
@Binbin Qi,
Almost same with you. I tried many times, but could not speed up any
more.
Want to see some faster solutions in the future.
1105 Solvers
Return unique values without sorting
488 Solvers
Sum of first n terms of a harmonic progression
190 Solvers
631 Solvers
474 Solvers