美文网首页
【算法题】2442. 反转之后不同整数的数目

【算法题】2442. 反转之后不同整数的数目

作者: 程序员小2 | 来源:发表于2023-03-25 08:56 被阅读0次

    题目:

    给你一个由 正 整数组成的数组 nums 。

    你必须取出数组中的每个整数,反转其中每个数位,并将反转后得到的数字添加到数组的末尾。这一操作只针对 nums 中原有的整数执行。

    返回结果数组中 不同 整数的数目。

    示例 1:

    输入:nums = [1,13,10,12,31]
    输出:6
    解释:反转每个数字后,结果数组是 [1,13,10,12,31,1,31,1,21,13] 。
    反转后得到的数字添加到数组的末尾并按斜体加粗表示。注意对于整数 10 ,反转之后会变成 01 ,即 1 。
    数组中不同整数的数目为 6(数字 1、10、12、13、21 和 31)。
    示例 2:

    输入:nums = [2,2,2]
    输出:1
    解释:反转每个数字后,结果数组是 [2,2,2,2,2,2] 。
    数组中不同整数的数目为 1(数字 2)。

    提示:

    1 <= nums.length <= 105
    1 <= nums[i] <= 106

    java代码:

    //模拟
    class Solution {
        public int countDistinctIntegers(int[] nums) {
            Set<Integer> visited = new HashSet<>();
            for (int x: nums){
                visited.add(x);
                String cur = new StringBuilder("" + x).reverse().toString();
                int y = Integer.parseInt(cur);
                visited.add(y);
            }
    
            return visited.size();
        }
    }
    

    相关文章

      网友评论

          本文标题:【算法题】2442. 反转之后不同整数的数目

          本文链接:https://www.haomeiwen.com/subject/spzgrdtx.html