Strobogrammatic Number III
A strobogrammatic number is a number that looks the same when rotated 180 degrees (looked at upside down).
Return the number of all strobogrammatic numbers that are of length from 1 to n.
For example, Given n = 2, return 7, because
["0", "1", "8", "11","69","88","96"]
.
Thoughts
排列问题. 对于长度为n的, 如果是偶数, 那么左半边可以为[0, 1, 8, 6, 9]四个数的任意组合, 但0不能排在左半边的最外面的, 因此除最外层有5 ^ (n / 2 - 1) 排列方式, 再乘以除0外剩余4个. 奇数的话在此基础上*3, 因为能取[0 , 1, 8].
Code
Analysis
时间复杂度O(N).
Last updated
Was this helpful?