首页 > 其他分享 >力扣---2475. 数组中不等三元组的数目

力扣---2475. 数组中不等三元组的数目

时间:2023-06-13 09:55:36浏览次数:27  
标签:map 2475 nums int res 三元组 --- num

给你一个下标从 0 开始的正整数数组 nums 。请你找出并统计满足下述条件的三元组 (i, j, k) 的数目:

0 <= i < j < k < nums.length
nums[i]、nums[j] 和 nums[k] 两两不同 。
换句话说:nums[i] != nums[j]、nums[i] != nums[k] 且 nums[j] != nums[k] 。
返回满足上述条件三元组的数目。

 

示例 1:

输入:nums = [4,4,2,4,3]
输出:3
解释:下面列出的三元组均满足题目条件:
- (0, 2, 4) 因为 4 != 2 != 3
- (1, 2, 4) 因为 4 != 2 != 3
- (2, 3, 4) 因为 2 != 4 != 3
共计 3 个三元组,返回 3 。
注意 (2, 0, 4) 不是有效的三元组,因为 2 > 0 。
示例 2:

输入:nums = [1,1,1,1,1]
输出:0
解释:不存在满足条件的三元组,所以返回 0 。
 

提示:

3 <= nums.length <= 100
1 <= nums[i] <= 1000

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/number-of-unequal-triplets-in-array
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。


 

数据量很小,纯暴力也能过。

可以把数组分成三部分:前面的,中间的,后面的。

排序或者哈希表都可以达成目的。

class Solution {
    public int unequalTriplets(int[] nums) {
        int res = 0;
        Map<Integer, Integer> map = new HashMap<>();
        for (int num : nums) {
            map.put(num, map.getOrDefault(num, 0) + 1);
        }
        int a = 0;
        int len = nums.length;
        for (int b : map.values()) {
            res += a * b * (len - a - b);
            a += b;
        }
        return res;
    }
}

 

标签:map,2475,nums,int,res,三元组,---,num
From: https://www.cnblogs.com/allWu/p/17476679.html

相关文章

  • mybaits-plugs 连接orcale自动生成
    mybaits-plugs连接orcale自动生成calorca  20200516shmybatis-plugs是对mybatis框架进一步封装,今天尝试使用mybatis-plugs的逆向工程连接orcale/mysql数据库生成实体类以及dao1、遇到的问题有连接数据的时候抱错,拒绝连接一定要仔细检查orcalsid服务id是否正......
  • [转]C#---特性与反射
    C#---特性与反射 所有.NET支持的语言编写出来的程序,在对应的编译器编译之后,会先产出程序集,其主要内容是中间语言IL和元数据。之后,JIT再将IL翻译为机器码(不同机器实现方式不同)。IL使得跨平台成为可能,并且统一了各个框架语言编译之后的形式,使得框架实现的代价......
  • YOKOGAWA CP451-10
    W;① ⑧ 0 ③0 ① 7 7 ⑦ 5 ⑨YOKOGAWAYNT511DYOKOGAWA PW501YOKOGAWA AIP578 YOKOGAWA AIP171从IntelAtom四核1.9GHz到IntelCeleron2GHz的不同CPU版本可实现应用程序优化的计算能力,因此可视化、图像处理、PLC、运动、机器人和CNC可以在单......
  • 信息可视化—《抑郁-沉默的杀手》
    主题:抑郁与健康 形式:系列海报+包装图内容分为:1、抑郁概况 2、抑郁症状与原因 3、抑郁危害 4、抑郁与治愈 设计思路—对象分析我们从年龄段、地区、性别等多个方面对抑郁占比情况进行了分析,以图表的形式将各类数据清晰的展现出来,让人们更加直观的了解抑郁的占比......
  • 微课与教学辅助-中、小学数学或自然科学课程—《玩转轴对称图形》
    基于本知识点的教学目标和设计理念,作品以小贝和妈妈周末去公园游玩为教学故事线,引导学生和小贝一起发现和学习轴对称图形,教学设计主要分为如下七个环节。1、情境导入小贝和妈妈周末公园游玩,看到路边垃圾桶上的图标引入轴对称图形。引导学生观察生活中的事物,贯彻“数学来源于生活......
  • 代码随想录算法训练营第24天 | ● 理论基础 ● 77. 组合 - 第7章 回溯算法part01
     第七章 回溯算法part01今日内容: ●  理论基础 ●  77. 组合    详细布置   理论基础  其实在讲解二叉树的时候,就给大家介绍过回溯,这次正式开启回溯算法,大家可以先看视频,对回溯算法有一个整体的了解。 题目链接/文章讲解:https://programmercar......
  • 代码随想录算法训练营第25天 | ● 216.组合总和III ● 17.电话号码的字母组合 - 第7章
     第七章 回溯算法part02 今日内容:  ●  216.组合总和III●  17.电话号码的字母组合  详细布置   216.组合总和III  如果把 组合问题理解了,本题就容易一些了。  题目链接/文章讲解:https://programmercarl.com/0216.%E7%BB%84%E5%90%88%E6%80%B......
  • Open Project 系列3 --- 备份与还原
    一、概要1.承上启下OpenProject系列2.简介OpenProject提供了两种备份方式,一种是Admin用户通过页面备份,另一种是通过命令备份。本文选择通过命令备份的方式。3.备份内容a.存储在Postgres中的数据;b.配置文件;c.上传的文件(附件);d.Git/SVN仓库(如果有的话)。二、......
  • axios-使用axios发起基本的GET请求
    axios是一个专注于网络请求的库!<!DOCTYPEhtml><html> <head> <metacharset="utf-8"> <title></title> </head> <body> <scriptsrc="lib/axios.js"></script> <script> //1.调......
  • 枚举的方法、枚举案例 - 状态机、组织枚举、策略枚举、枚举工具类 - EnumSet 和 EnumM
    引入编写季节类(Season),该类只有四个对象(spring,summer,autumn,winter)概念枚举(enum)全称为enumeration,是JDK1.5中引入的新特性。语法publicenumColor{//默认添加publicstaticfinalRED,GREEN,BLUE;}本质尽管枚举看起来像是一种新的数据类型,实际上,枚举就是一种受限制......