247 Strobogrammatic Number II
Problem:
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, Given n = 2, return ["11","69","88","96"].
Solutions:
class Solution {
public List<String> findStrobogrammatic(int n) {
List<String> res = new LinkedList<String>();
if (n == 0) {
return res;
}
return fs(n, n);
}
private List<String> fs(int n, int target) {
List<String> res = new LinkedList<String>();
if (n == 0) {
res.add("");
return res;
}
if (n == 1) {
res.add("0");
res.add("1");
res.add("8");
return res;
}
List<String> tmp = fs(n - 2, target);
for (String str:tmp) {
res.add("1" + str + "1");
res.add("8" + str + "8");
res.add("6" + str + "9");
res.add("9" + str + "6");
if (n != target) {
res.add("0" + str + "0");
}
}
return res;
}
}Previous246 Strobogrammatic Number – EasyNext248 LeetCode Java: Different Ways to Add Parentheses – Hard
Last updated