Inspired by Project Euler n°112.
- Working from left-to-right if no digit is exceeded by the digit to its left it is called an increasing number. For example: 134468.
- Similarly if no digit is exceeded by the digit to its right it is called a decreasing number. For example: 66420.
We shall call a positive integer that is neither increasing nor decreasing a bouncy number. For example, 155349.
Clearly there cannot be any bouncy numbers below one-hundred, but surprisingly, these numbers become more and more common after.
Find the least number for which the proportion of bouncy numbers is exactly p%.
As always this type of problem is difficult to solve with usual Matlab functions (num2str).
So keep an eye on time...
Solution Stats
Problem Comments
3 Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers46
Suggested Problems
-
4529 Solvers
-
Convert a numerical matrix into a cell array of strings
2567 Solvers
-
Return elements unique to either input
818 Solvers
-
How many trades represent all the profit?
619 Solvers
-
Height of a right-angled triangle
2103 Solvers
More from this Author43
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
I think the problem statement should read "the proportion of bouncy numbers is at least p%", rather than "exactly p%."
Currently, num2str is able to handle all test cases.
Perhaps num2str was too slow when the problem was initially posted. Many built-in functions have undergone significant performance improvements over the years.