首页 > 其他分享 >Leetcode3265. 统计近似相等数对 I

Leetcode3265. 统计近似相等数对 I

时间:2024-09-10 13:21:17浏览次数:3  
标签:return Leetcode3265 nums int s2 数对 近似 ++ string

Every day a Leetcode

题目来源:3265. 统计近似相等数对 I

解法1:枚举

暴力枚举数组 nums 中下标 i 和 j 满足 i < j 的 nums[i] 和 nums[j],判断它们是否近似相等。

细节:先对数组 nums 升序排序,在判断它们是否近似相等,转成字符串进行比较,且只交换较大数的数位。

代码:

/*
 * @lc app=leetcode.cn id=3265 lang=cpp
 *
 * [3265] 统计近似相等数对 I
 */

// @lc code=start
class Solution
{
public:
    int countPairs(vector<int> &nums)
    {
        int n = nums.size();
        sort(nums.begin(), nums.end());

        int ans = 0;
        for (int i = 0; i < n - 1; i++)
            for (int j = i + 1; j < n; j++)
                if (check(to_string(nums[i]), to_string(nums[j])))
                    ans++;
        return ans;
    }
    // 辅函数
    bool check(string s1, string s2)
    {
        if (stoi(s1) == stoi(s2))
            return true;
        int len2 = s2.length();
        for (int i = 0; i < len2 - 1; i++)
            for (int j = i + 1; j < len2; j++)
            {
                swap(s2[i], s2[j]); // 交换数位
                if (stoi(s1) == stoi(s2))
                    return true;
                else
                {
                    // 记得复原
                    swap(s2[i], s2[j]);
                }
            }
        return false;
    }
};
// @lc code=end

结果:

在这里插入图片描述

复杂度分析:

时间复杂度:O(nlogn + n2 * len(max(nums))2),其中 n 是数组 nums 的长度。

空间复杂度:O(1)。

标签:return,Leetcode3265,nums,int,s2,数对,近似,++,string
From: https://blog.csdn.net/ProgramNovice/article/details/141959201

相关文章

  • 2563. 统计公平数对的数目
    题目链接2563.统计公平数对的数目思路排序+二分(upper_bound-lower_bound)题解链接两种方法:二分查找/三指针(Python/Java/C++/Go)关键点排序并不影响答案(数对数量未变化)时间复杂度\(O(n\logn)\)空间复杂度\(O(1)\)代码实现:classSolution:d......
  • CSS隐藏元素的几种方法,以及他们之间的区别,opacity/visibility/display/rgba函数对比
    文章目录概要displayvisibilityopacitybackground比对概要在网页设计中,我们经常需要将一个元素隐藏或者显示,而需求不同时,不同的隐藏方式也会带来不同的隐藏效果,我们来看看集中隐藏方式的不同。display浏览器不会生成属性为display:none;的元素。dis......
  • 数字与文字组合商标,有一个元素近似整体驳回!
    经常遇到有网友问驳回复审要不要做复审,其实判断分析好,大多数商标驳回后不值得做复审,也可以省掉不必要的费用,最近有个网友联系到普推知产商标老杨,咨询一个驳回复审的问题。这个网友的商标是数字和文字组合,这样的商标和以前多次聊过的图形和文字组合商标是是一样的,只要有一个......
  • python_August(函数对象、功能选择)
    目录python中一切皆对象功能选择函数的嵌套功能选择增加内容版python中一切皆对象#python中一切皆对象#print(self_max)#<functionself_maxat0x0000020E4456CF28>#print(id(self_max))#print(type(self_max))#print(type([1,2]))#print(type(1))#print(type(......
  • opencv轮廓近似,模板匹配
    在图像处理领域,轮廓近似和模板匹配是两种非常关键的技术,它们广泛应用于计算机视觉、图像分析和图像识别等多个方面。本文将详细介绍如何使用OpenCV库进行轮廓近似和模板匹配,并给出具体的代码示例。一、轮廓近似(ContourApproximation)轮廓近似是指将图像中的轮廓逼近成由直线......
  • 《深度学习》OpenCV轮廓检测 轮廓近似、模板匹配 解析及实现
    一、轮廓近似1、什么是轮廓近似        指对轮廓进行逼近或拟合,得到近似的轮廓。在图像处理中,轮廓表示了图像中物体的边界,因此轮廓近似可以用来描述和识别物体的形状。2、参数解析1)用法importcv2approx=cv2.approxPolyDP(curve,epsilon,closed)2)参数 ......
  • 最优化(13):近似点梯度法、Nesterov算法
    6.1  近似点梯度法        6.1.1 邻近算子(proximaloperator):主要介绍proximaloperator的相关定义和性质        6.1.2  近似点梯度法:给出了proximalgradientmethod算法框架        6.1.3 应用举例:LASSOproblem和Low-rankmatrixcomp......
  • 14.STL-内建函数对象
    内建函数对象引入头文件#include<functional>取反negate加法plus大于greater#define_CRT_SECURE_NO_WARNINGS#include<iostream>usingnamespacestd;#include<functional>//内建函数对象头文件#include<vector>#include<algorithm>/*template<......
  • 7-1 素数对猜想(C语言)
    7-1素数对猜想题目参考代码#include<stdio.h>intmain(){ //一、用埃拉托斯特尼筛法,找出所有的素数 intnum[100002]; intN; scanf("%d",&N); for(inti=2;i<N+2;i++)//赋初值为1,表示均为素数 num[i]=1; //把未标记的数的的倍数,全部标记为非素......
  • Dapper传递参数对象时,只支持属性,无法解析字段(出现Parameter '?id' must be defined)
    有的时候使用Dapper执行数据操作时,我们会把模型对象直接作为参数传递进去,但是需要在注意的是!Dapper解析数据是根据属性进行解析的,如果传递的类中使用字段赋值,就会报错 Parameter'?xxx'mustbedefinedclassAAA{publicintID{get;set;}......