Finding 3-Digit Even Numbers
求所有三个字母的偶数, 并且由给的digits组成.
这个题的答案有范围, 而且很小, 一个个找就行了.
class Solution {
public int[] findEvenNumbers(int[] digits) {
int[] used = new int[10];
for(int d : digits)
used[d]++;
List<Integer> list = new ArrayList<>();
for(int i = 100; i <= 999; i++)
{
if(i % 2 != 0)
continue;
boolean yes = true;
int[] cur = Arrays.copyOf(used, 10);
String str = i+"";
for(char c : str.toCharArray()){
cur[c - '0'] --;
if(cur[c - '0'] < 0){
yes = false;
}
}
if(yes)
list.add(i);
}
int[] res = new int[list.size()];
for(int i = 0; i < list.size(); i++){
res[i] = list.get(i);
}
return res;
}
}