力扣每日一题 公司命名 集合 找规律

server/2024/9/29 3:30:25/

Problem: 2306. 公司命名
在这里插入图片描述

👨‍🏫 灵神题解
在这里插入图片描述

class Solution {public long distinctNames(String[] ideas) {// 创建一个大小为26的HashSet数组,用于存储每个首字母对应的字符串集合Set<String>[] groups = new HashSet[26];Arrays.setAll(groups, i -> new HashSet<>());long ans = 0; // 初始化答案计数器// 遍历字符串数组,将每个字符串按首字母分类存储到对应的HashSet中for (String s : ideas) {groups[s.charAt(0) - 'a'].add(s.substring(1));}// 遍历所有可能的首字母组合(a和b),a > bfor (int a = 1; a < 26; a++) {for (int b = 0; b < a; b++) {int m = 0; // 初始化交集计数器// 计算两个首字母集合的交集大小for (String s : groups[a]) {if (groups[b].contains(s))m++;}// 计算可以交换首字母的字符串对数量// (a集合中非交集部分的大小) * (b集合中非交集部分的大小)ans += (long) (groups[a].size() - m) * (groups[b].size() - m);}}// 由于每对字符串可以以两种方式交换(ab和ba),所以最终答案乘以2return ans * 2;}
}

http://www.ppmy.cn/server/123295.html

相关文章

【我的 PWN 学习手札】House of Botcake —— tcache key 绕过

参考自看雪课程&#xff1a;PWN探索篇 前言 我们知道&#xff0c;自对 tcachebin 添加了 key 进行了 double free 检查后&#xff0c;利用起来薛微有些困难。double free 绕过检查机制&#xff0c;实则是因为释放时会检查 tcachebin 对应 size 的所有 free chunk。那么如果第二…

9.24-k8s服务发布

Ingress 使用域名发布 K8S 服务 部署项目 一、先部署mariadb [rootk8s-master ~]# mkdir aaa [rootk8s-master ~]# cd aaa/ [rootk8s-master aaa]# # 先部署mariadb [rootk8s-master aaa]# # configmap [rootk8s-master aaa]# vim mariadb-configmap.yaml apiVersion: v1 ki…

速盾:高防cdn防御的时候会封ip吗?

高防CDN&#xff08;Content Delivery Network&#xff09;是一种用于提供网站或应用程序防护和内容分发的服务。它通过将内容分发到全球多个服务器上&#xff0c;帮助用户提高网站的访问速度和可用性&#xff0c;并提供强大的防护功能&#xff0c;包括防DDoS攻击、Web应用程序…

《凡人歌》中的IT职业启示录

《凡人歌》是由中央电视台、正午阳光、爱奇艺出品&#xff0c;简川訸执导&#xff0c;纪静蓉编剧&#xff0c;侯鸿亮任制片&#xff0c;殷桃、王骁领衔主演&#xff0c;章若楠、秦俊杰、张哲华、陈昊宇主演的都市话题剧 &#xff0c;改编自纪静蓉的小说《我不是废柴》。该剧于2…

Linux编译安装Mysql笔记

1.Mysql介绍 MySQL是一个广泛使用的开源关系型数据库管理系统&#xff08;RDBMS&#xff09;&#xff0c;它基于SQL&#xff08;Structured Query Language&#xff09;进行操作。MySQL是由瑞典MySQL AB公司开发的&#xff0c;后来被Sun Microsystems收购&#xff0c;最终成为…

C语言自定义类型:联合体

目录 前言一、联合体1.1 联合体类型的声明1.2 联合体的特点1.3 相同成员的结构体和联合体对比1.4 联合体大小的计算1.5 联合体的⼀个练习 总结 前言 前面我讲到C语言中的自定义结构——结构体&#xff0c;其实C语言中的自定义结构不只有结构体&#xff0c;还有枚举和联合体&am…

实战C++手写线程池

课程总目录 文章目录 一、项目必备基础概念1.1 并发和并行1.2 多线程的优势1.3 线程的消耗1.4 线程池的优势1.5 线程池的两种模式:fixed模式和cached模式1.6 线程同步之线程互斥1.7 线程同步之线程通信1.7.1 条件变量1.7.2 信号量1.8 项目设计图浏览二、线程池代码展示三、线程…

PyQt5 statusbar 放图片并设置图片大小和左右间距

在 PyQt5 中&#xff0c;状态栏&#xff08;QStatusBar&#xff09;通常用于显示窗口的状态信息或提示。虽然 PyQt5 的 QStatusBar 没有直接提供设置图片作为状态栏项&#xff08;QStatusBarItem&#xff09;的 API&#xff0c;但你可以通过添加一个 QWidget&#xff08;如 QLa…