Problem 1082. Lychrel Number Test (Inspired by Project Euler Problem 55)
The task for this problem is to create a function that takes a number n and tests if it might be a Lychrel number. This is, return true if the number satisfies the criteria stated below.
From Project Euler: Link
If we take 47, reverse and add, 47 + 74 = 121, which is palindromic.
Not all numbers produce palindromes so quickly. For example,
349 + 943 = 1292, 1292 + 2921 = 4213 4213 + 3124 = 7337
That is, 349 took three iterations to arrive at a palindrome.
Although no one has proved it yet, it is thought that some numbers, like 196, never produce a palindrome. A number that never forms a palindrome through the reverse and add process is called a Lychrel number. Due to the theoretical nature of these numbers, and for the purpose of this problem, we shall assume that a number is Lychrel until proven otherwise. In addition you are given that for every number below ten-thousand, it will either (i) become a palindrome in less than fifty iterations, or, (ii) no one, with all the computing power that exists, has managed so far to map it to a palindrome. In fact, 10677 is the first number to be shown to require over fifty iterations before producing a palindrome: 4668731596684224866951378664 (53 iterations, 28-digits).
Surprisingly, there are palindromic numbers that are themselves Lychrel numbers; the first example is 4994.
Solution Stats
Problem Comments
-
4 Comments
I think this assertion part is obsolete, in the form of "assert(islychrel(n))" or "assert(~islychrel(n))" now will fail directly on the new cody system. my code run at my computer seems fine by the way.
It looks like there is an error in the test suite, because 3664 becomes 475574 after 5 iterations, although the test suite says that it's not a Lychrel number. (In addition, OEIS A023108, which lists all non-Lychrel numbers up to 3675, excludes 3664).
Currently, the test suite seems to be working fine.
Tom Holz cause you and me is misunderstood the problem,the problem is check number "not palindrome"
Solution Comments
Show commentsProblem Recent Solvers97
Suggested Problems
-
1194 Solvers
-
1621 Solvers
-
Program an exclusive OR operation with logical operators
712 Solvers
-
Find a subset that divides the vector into equal halves
387 Solvers
-
7871 Solvers
More from this Author56
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!