3.30/1606找到请求最多的处理器
    太难了,我是废物
    3.31/自除数,即数本身能被各位上的元素整除

    1. class Solution {
    2. public List<Integer> selfDividingNumbers(int left, int right) {
    3. List<Integer> ans = new ArrayList<Integer>();
    4. for (int i = left; i <= right; i++) {
    5. if (isSelfDividing(i)) {
    6. ans.add(i);
    7. }
    8. }
    9. return ans;
    10. }
    11. public boolean isSelfDividing(int num) {
    12. int temp = num;
    13. while (temp > 0) {
    14. int digit = temp % 10;
    15. if (digit == 0 || num % digit != 0) {
    16. return false;
    17. }
    18. temp /= 10;
    19. }
    20. return true;
    21. }
    22. }

    4.1二倍数数组
    数组能不能拆成奇数位置是偶数位置二倍的样子

    class Solution {
        public boolean canReorderDoubled(int[] arr) {
            Map<Integer, Integer> cnt = new HashMap<Integer, Integer>();
            for (int x : arr) {
                cnt.put(x, cnt.getOrDefault(x, 0) + 1);
            }
            if (cnt.getOrDefault(0, 0) % 2 != 0) {
                return false;
            }
    
            List<Integer> vals = new ArrayList<Integer>();
            for (int x : cnt.keySet()) {
                vals.add(x);
            }
            Collections.sort(vals, (a, b) -> Math.abs(a) - Math.abs(b));
    
            for (int x : vals) {
                if (cnt.getOrDefault(2 * x, 0) < cnt.get(x)) { // 无法找到足够的 2x 与 x 配对
                    return false;
                }
                cnt.put(2 * x, cnt.getOrDefault(2 * x, 0) - cnt.get(x));
            }
            return true;
        }
    }