首页 > 其他分享 >1814.统计一个数组中好对子的数目

1814.统计一个数组中好对子的数目

时间:2023-06-14 09:26:31浏览次数:46  
标签:1814 nums int rev long num ans 中好 对子

问题描述

1814.统计一个数组中好对子的数目

解题思路

首先,变换一下题目的需求,nums[i] - rev(nums[i]) == nums[j] - rev(nums[j]),然后利用哈希表记录每个值出现了多少次就可以了。

代码

class Solution {
public:
    int rev(int num)  {
        vector<int> tmp;
        int ans = 0;
        while (num != 0) {
            tmp.push_back(num % 10);
            num /= 10;
        }
        for (int i = 0; i < tmp.size(); i++) {
            ans = ans * 10 + tmp[i];
        }
        return ans;
    }
    int countNicePairs(vector<int>& nums) {
        map<int, int> mp;
        for (int i = 0; i < nums.size(); i++) {
            mp[nums[i] - rev(nums[i])]++;
        }
        long long ans = 0;
        for (auto it = mp.begin(); it != mp.end(); it++) {
            ans += (long long) it->second * (it->second - 1) / 2;
        }
        return ans % (1000000007);
    }
};

标签:1814,nums,int,rev,long,num,ans,中好,对子
From: https://www.cnblogs.com/zwyyy456/p/17479220.html

相关文章

  • linux的父进程向子进程发kill信号例子以及对子进程的状态进行判断
    先看一个父进程向子进程发kill信号例子:#include<stdio.h>#include<unistd.h>#include<signal.h>#include<sys/types.h>#include<sys/wait.h>intmain(intargc,constchar*argv[]){pid_tpid;intstatus;pid=fork();if(......
  • 力扣---1448. 统计二叉树中好节点的数目
    给你一棵根为 root 的二叉树,请你返回二叉树中好节点的数目。「好节点」X定义为:从根到该节点X所经过的节点中,没有任何节点的值大于X的值。 示例1:输入:root=[3,1,4,3,null,1,5]输出:4解释:图中蓝色节点为好节点。根节点(3)永远是个好节点。节点4->(3,4)是路径中......
  • CF1814E Chain Chips & CF750E New Year and Old Subsequence - 动态 dp -
    一句话概括动态dp:用来解决带修改/多次区间询问的dp问题。将转移写成矩阵的形式,然后利用线段树求解区间问题/单点修改1814E注意一条边要么选2要么选0次,而且第一条边一定是选了2次。如果有一条边没选,那么这条边两侧的边一定都选了。设\(f_i\)代表考虑到第\(i\)条边,......
  • Android中好用的库
    原文地址www.jianshu.com本库主要提供一个简单易用的自定义分段控件,方便快速实现分段效果,支持xml配置、代码配置、分段规则按均分/比例分、数字分段、文本分段、渐变分段、bar条样式正常/圆形/三角形,segment文字样式、进度设置、进度标记类型设置、分段描述设置、其它更多自......
  • 盘点C# 9.0中好用的特性
    顶级语句将类和类里面Main函数省略,只留下核心的逻辑代码就是顶级语句!1.顶级语句1awaitSystem.Threading.Tasks.Task.Delay(1000);System.Console.WriteLine("Hi!");return0;staticclass$Program{staticasyncTask<int>$Main(string[]args){awai......
  • PfSense pfBlockerNG 未授权RCE漏洞(CVE-2022-31814)
    PfSensepfBlockerNG未授权RCE漏洞(CVE-2022-31814)概述PfSense系统的插件pfBlockerNG引起的未授权RCE漏洞pfSense是一个基于FreeBSD操作系统开发的防火墙和路由器软件......
  • 父进程对子进程不进行回收,让系统去回收,线程也一样
    在父进程中,使用下面函数以后,父进程对子进程不进行回收,让操作系统去回收signal(SIGCHLD,SIG_IGN);如果主线程对子线程,不进行回收的时候,采用子线程和主线程分离,分离以......
  • 关于 EF Core 使用 SplitQuery 后由于不稳定排序字段对子表查询结果的影响
    引子假设在博客系统中的表设计为:classDiagramclassBlog{+StringId+StringName+DateTimeCreateTime+intOrder+List<Post>......
  • vue3 中好用的插件
    1.Api自动导入unplugin-auto-import自动引入compositionapi,不需要再手动引入。(npm地址)下载npmi-Dunplugin-auto-import配置vite.config.tsimportAutoIm......
  • 力扣每日一题2023.1.17---1814. 统计一个数组中好对子的数目
    给你一个数组 nums ,数组中只包含非负整数。定义 rev(x) 的值为将整数 x 各个数字位反转得到的结果。比方说 rev(123)=321 , rev(120)=21 。我们称满足下面条......