We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies.
Project Euler #113: Non-bouncy numbers
Project Euler #113: Non-bouncy numbers
Sort by
recency
|
16 Discussions
|
Please Login in order to post a comment
I arrived at the formula (k+9)C9+(k+10)C10 - 10*k - 2 non bouncy numbers less than 10^k using pen and paper. (combinatorics)
Also number of increasing and decreasing non bouncy numbers won't be the same, some people might make that mistake.
Indeed, it may help to understand Rota's famous 12-fold way of counting functions N⟶X.
For the second sentence, I agree and my further hint is to count a space " " as a digit higher than 9 when counting the decreasing sequences recursively. For example, "10" is a decreasing 2-digit number but padding a leading zero "010" switches it to bouncy, whereas padding it with a high-valued leading space makes it " 10", thus retaining it as decreasing.
Seriously, putting two times the same number... just so you know for the ones that come after.
Terminated due to timeout What does this mean???
Input (stdin) 3 3 5 10
Your Output (stdout) 474 4953
Expected Output 474 4953 277032
Compiler Message
Terminated due to timeout
Can it be solved using digit dp? Means states will be like: dp[N][last]=summation(dp[N-1][i]) for all i>=last for increasing? I tried this but its counting lesser no of increasing and decreasing numbers. Can anyone explain whats wrong?
By the definitions given, the number 4444 is trivially both increasing and decreasing and thus not bouncy, correct?