【力扣每日一题】2023.10.19 同积元组

news2024/11/18 7:33:55

目录

题目:

示例:

分析:

代码:


题目:

示例:

分析:

题目比较简洁,给我们一个元素各不相同的数组,要我们找出该数组里能够组成 a*b=c*d 的组合数目。

比较直观的做法是我们直接暴力枚举,不过这肯定是会超时的,所以我们需要优化一下。

我们把题目换个说法,a*b=c*d 那就是两组乘积相同的数,所以我们就改为一共有多少两组乘积相同的数,得出来的结果需要乘8,因为abcd是可以调换顺序的,就算是同样的4个数,也会产生出8种不同的排列组合。

接下来我们就只需要找出数组中有多少两两相乘的乘积相同的数。

题目给的示例中的解释把答案的元组全列出来了,有些许的误导,实际上我们并不需要知道符合答案的元组是什么,我们只要求出元组数量即可。

所以我们两层for循环把数组中任意两个数都给乘一边,把每两个数之前的乘积的所有可能都获取到,用一个map来接收,键是乘积,值是乘积出现的次数。

获取完毕之后我们就得到了所有可能出现的乘积以及能够凑成乘积的元素组数。任意两个组都可以凑成一个a*b=c*d,并且根据我们之前的分析,每凑成一个我们都能得到8种答案。

我们初中应该都学过排列组合,假设能凑成乘积为i的一共有n个组,那么这n个组两两配对,一共会有这么多种可能。

因此把map遍历一边,套这个公式就等得出有多少两组数乘积相同的数量了,最后把这个结果再乘8即可。

代码:

class Solution {
public:
    int tupleSameProduct(vector<int>& nums) {
        unordered_map<int,int>m;
        for(int i=0;i<nums.size();++i){
            for(int j=i+1;j<nums.size();++j){
                //获取任意两个元素的乘积数
                m[nums[i]*nums[j]]++;
            }
        }
        int res=0;
        for(auto& p:m){
            //从n里面选出2的排列组合总数
            res+=(p.second*(p.second-1)/2);
        }
        return res*8;
    }
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1110033.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023年中国半导体过滤器产业链、市场规模及发展趋势分析[图]

半导体过滤器的作用主要是对空气中的微粒进行过滤&#xff0c;包括清除空气中的细菌、病毒、霉菌孢子、花粉、微粒等物质&#xff0c;半导体过滤器相比传统过滤器&#xff0c;具有更高的过滤效率和更长的使用寿命。其核心元件是由金属氧化物和碳化硅等半导体材料制成的过滤芯片…

总结 STM32 常见的一百多个知识点

1、AHB系统总线分为APB1&#xff08;36MHz&#xff09;和APB2&#xff08;72MHz&#xff09;&#xff0c;其中2>1&#xff0c;意思是APB2接高速设备 2、Stm32f10x.h相当于reg52.h&#xff08;里面有基本的位操作定义&#xff09;&#xff0c;另一个为stm32f10x_conf.h专门控…

虹科Pico十月活动 | 精彩丰富的汽车示波器培训与直播活动等你参加!

线下培训&#xff1a;虹科&TG学院&#xff1a;上海站技术培训 精彩回顾 上海站技术交流会成功举办 10月5、6日&#xff0c;虹科Pico汽车示波器与Tech Gear学院联合举办的汽车示波器技术交流会&#xff0c;在上海成功举办。本次技术交流会在上海欣车汇的车间进行&#xff0c…

智慧工地云平台,微服务架构,java源码

智慧工地系统源码&#xff0c;包含&#xff1a;视频监控、劳务实名制、环境监测、车辆管理、机械设备管理、可视化大屏、进度管理、项目信息管理、组织架构权限配置等功能。技术架构&#xff1a;javaVUEMySQL微服务 聚焦施工现场岗位一线&#xff0c;围绕“人、机、料、法、环”…

2023年【建筑架子工(建筑特殊工种)】考试内容及建筑架子工(建筑特殊工种)找解析

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 建筑架子工(建筑特殊工种)考试内容是安全生产模拟考试一点通生成的&#xff0c;建筑架子工(建筑特殊工种)证模拟考试题库是根据建筑架子工(建筑特殊工种)最新版教材汇编出建筑架子工(建筑特殊工种)仿真模拟考试。2023…

整车光老化试验舱太阳光模拟器

整车光老化试验舱太阳光模拟器可实现对汽车涂层、汽车外部照明、外部装饰件、标识、耐候密封条和垫圈、汽车玻璃、引擎室、传动链、车轮组件、阻燃性测试老化光照强度试验测试。 概述 整车光老化试验舱太阳光模拟器&#xff0c;在室内条件下对整车或零部件进行人工模拟大气暴…

【微服务】spring webflux响应式编程使用详解

目录 一、webflux介绍 1.1 什么是webflux 1.2 什么是响应式编程 1.3 webflux特点 二、Java9中响应式编程 2.1 定义事件流源 2.2 实现订阅者 三、Spring Webflux介绍 四、Reactor 介绍 五、Reactor 常用API操作 5.1 Flux 创建流操作API 5.2 Flux响应流的订阅 5.3 Fl…

『C++成长记』C++入门——命名空间缺省参数

&#x1f525;博客主页&#xff1a;小王又困了 &#x1f4da;系列专栏&#xff1a;C &#x1f31f;人之为学&#xff0c;不日近则日退 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 目录 一、C的认识 &#x1f4d2;1.1什么是C &#x1f4d2;1.2C的发展 二、C关键字 三…

Bootstrap的small标签

Bootstrap 中的 <small> 标签是用来标记和渲染小文本的 HTML 元素。它通常用于表示与主要文本内容不同的次要信息、注释、版权声明、法律声明、或者其他需要更小字号的文本。在 Bootstrap 中&#xff0c;<small> 标签可以进一步定制样式以适应您的设计需求。 以下…

如何用工业树莓派和MQTT平台打通OT和IT?

一、应用设备 OT端设备&#xff1a;步进电机&#xff0c;MODBUS TCP远程I/O模块&#xff0c;PLC设备 边缘侧设备&#xff1a;宏集工业树莓派&#xff1b; IT端设备&#xff1a;PC、安卓手机&#xff1b; IT端软件&#xff1a;宏集HiveMQ MQTT通信平台 二、原理 宏集工业树…

Autodesk_Revit2022安装图文教程_Revit2022建筑信息模型BIM软件图文教程

下载地址&#xff1a;https://pan.92zl.cn/ 1、先下载文件&#xff0c;不同版本的安装注册方式是不一样的步骤。 2、运行安装文件。 3、安装过程请等待 4、和常用软件一样安装&#xff0c;注意安装路径即可 5、直到出现安装完成界面 6、接下来打开Crack文件夹的Autodesk Licen…

Redis之UV统计

HyperLogLog 首先我们搞懂两个概念&#xff1a; UV&#xff1a;全称Unique Visitor&#xff0c;也叫独立访客量&#xff0c;是指通过互联网访问、浏览这个网页的自然人。1天内同一个用户多次访问该网站&#xff0c;只记录1次。PV&#xff1a;全称Page View&#xff0c;也叫页…

C++类与对象 (上)

C类与对象 &#xff08;上&#xff09; 1.面向过程和面向对象初步认识2.类的引入3.类的定义4.类的访问限定符及封装4.1权限限定符4.2封装 5.类的作用域6.类的实例化7.类的对象大小的计算7.1如何计算类的大小7.2类对象的储存方式 8.类成员函数的this指针8.1this指针的引出8.2thi…

C语言动态内存管理———超级全!快来看!

C语言动态内存管理———超级全&#xff01;快来看&#xff01; 文章目录 C语言动态内存管理———超级全&#xff01;快来看&#xff01;一、为什么要用动态内存二、动态内存函数1.malloc和free①malloc②.free③举例a.内存的空间b.栗子 2.calloc3.realloc 三、动态内存分配常…

遇到工厂索赔你是一竿子处理方式吗?

最近听到一个博主说关于客户索赔的事情&#xff0c;说是自己以前的处理方式要么就是将事情推给工厂&#xff0c;以工厂的态度为原则&#xff0c;工厂赔付给我们&#xff0c;然后我们就同意赔付给客户。如果工厂敷衍我们&#xff0c;那么我们就敷衍客户&#xff0c;这样最起码能…

蓝桥杯每日一题2023.10.19

题目描述 完全二叉树的权值 - 蓝桥云课 (lanqiao.cn) 题目分析 我们以每一个节点的坐标来将这一深度的权值之和相加从而算出权值和 要清楚每一个深度的其实节点和末尾节点&#xff0c;使用双指针将这个深度节点的权值和计算出来&#xff0c;记录所 需要的深度即可 #includ…

QT基础 柱状图

目录 1.QBarSeries 2.QHorizontalBarSeries 3.QPercentBarSeries 4.QHorizontalPercentBarSeries 5.QStackedBarSeries 6.QHorizontalStackedBarSeries 从上图得知柱状的基类是QAbstractBarSeries&#xff0c;派生出来分别是柱状图的水平和垂直类&#xff0c;只是类型…

1688拍立淘接口,按图搜索商品接口,图片识别接口,图片上传搜索接口,图片搜索API接口,以图搜货接口

1688拍立淘接口的作用是让用户通过上传图片或输入图片链接的方式&#xff0c;调用1688的图片搜索引擎&#xff0c;返回与该图片相关的所有1688商品。 使用该接口需要先获取一个key和secret&#xff0c;然后参考API文档里的接入方式和示例&#xff0c;查看测试工具是否有需要的…

h5的扫一扫功能 (非微信浏览器环境下)

必须在 https 域名下才生效 <template><div><van-field label"服务商编码" right-icon"scan" placeholder"扫描二维码获取" click-right-icon"getCameras" /> <div class"scan" :style"{disp…

互动超2800万!小红书涌现大批“听劝人”,关键词数据发掘内容玩法

听说一身反骨的年轻人&#xff0c;最近开始听劝了&#xff1f;不知道你有没有注意到&#xff0c;小红书上被“旅游听劝、穿搭听劝、改妆听劝”等各种“听劝”刷屏&#xff0c;诸多品牌纷纷入局&#xff0c;迂回种草。 一、预估互动量超2800万&#xff0c;小红书“听劝体”爆火 …