在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ A strobogrammatic number is a number that looks the same when rotated 180 degrees (looked at upside down). Find all strobogrammatic numbers that are of length = n. For example, Hint:
strobogramatic数字是旋转180度时看起来相同的数字(上下颠倒)。 找到所有长度为n的频闪图。 例如, 给定n=2,返回 [“11”,“69”,“88”,“96”]。 提示: 尝试使用递归,注意它应该使用n-2而不是n-1进行递归。 1 class Solution { 2 func shortest(_ n:Int) -> [String] { 3 var one:[String] = ["0","1","8"] 4 var two:[String] = [""] 5 var res:[String] = two 6 if n % 2 == 1 7 { 8 res = one 9 } 10 for i in stride(from: (n % 2) + 2,through: n,by: 2) 11 { 12 var t:[String] = [String]() 13 for a in res 14 { 15 if i != n 16 { 17 t.append("0" + a + "0") 18 } 19 t.append("1" + a + "1") 20 t.append("6" + a + "9") 21 t.append("8" + a + "8") 22 t.append("9" + a + "6") 23 } 24 res = t 25 } 26 return res 27 } 28 }
|
请发表评论