首页 > 其他分享 >力扣每日一题2022.12.12---1781. 所有子字符串美丽值之和

力扣每日一题2022.12.12---1781. 所有子字符串美丽值之和

时间:2022-12-12 18:55:17浏览次数:62  
标签:12 min int 1781 --- num 美丽 max 字符串

一个字符串的 美丽值 定义为:出现频率最高字符与出现频率最低字符的出现次数之差。
    比方说,"abaacc" 的美丽值为 3 - 1 = 2 。
给你一个字符串 s ,请你返回它所有子字符串的 美丽值 之和。

示例 1:
输入:s = "aabcb"
输出:5
解释:美丽值不为零的字符串包括 ["aab","aabc","aabcb","abcb","bcb"] ,每一个字符串的美丽值都为 1 。

示例 2:
输入:s = "aabcbaa"
输出:17

提示:
    1 <= s.length <= 500
    s 只包含小写英文字母。

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

刚开始找到一个优化的思路,想了一下午结果考虑的越多,需要设置的判断越复杂,最后实在是写不下去了,无奈放弃,用最简单的暴力法试了下,结果通过了,那就这样吧,以后有机会了优化优化。

代码如下:

 1 class Solution {
 2     public int beautySum(String s) {
 3         int res = 0;
 4         // 两层for循环遍历出所有可能的子字符串。
 5         for (int i = 0; i < s.length(); i++) {
 6             for (int j = i + 1; j < s.length(); j++) {
 7                 String m = s.substring(i, j + 1);
 8                 char[] arr = m.toCharArray();
 9                 //只包括英文小写字母,存储每个字母出现的次数。
10                 int[] arr1 = new int[26];
11                 for (char a : arr) {
12                     arr1[a - 97] += 1;
13                 }
14                 int max = 0;
15                 int min = 2147483647;
16                 for (int num : arr1) {
17                     if (num > 0) {
18                         max = Math.max(max, num);
19                         min = Math.min(min, num);
20                     }
21                 }
22                 if ((max - min) > 0) {
23                     res += max - min;
24                 }
25             }
26         }
27         return res;
28     }
29 }

运行结果:

运行结果

 

标签:12,min,int,1781,---,num,美丽,max,字符串
From: https://www.cnblogs.com/allWu/p/16976872.html

相关文章

  • Alibaba Nacos未授权访问CVE-2021-29441
    影响范围Nacos<=2.0.0-ALPHA.1漏洞描述2020年12月29日,Nacos官方在github发布的issue中披露AlibabaNacos存在一个由于不当处理User-Agent导致的未授权访问漏洞,攻击......
  • 记录--记一次前端CSS升级
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助目前平台前端使用的是原生CSS+BEM命名,在多人协作的模式下,容易出现样式冲突。为了减少这一类的问题,提升研......
  • CURL获取数据-支持cookie模拟登录
    <?php$url='http://abc.com';$method='get';$optionArr=array();$optionArr['cookie']='userid=1641281255339_h8wgml1013;';$result=curlDeal($url,$method,......
  • 推荐一个很棒的开源工作流elsa-core
    ​​​​开源项目orchard主要开发人员SipkeSchoorstra开源了一个netcore工作流项目,地址:​​https://github.com/elsa-workflows/elsa-core​​,最新版本1.2,正在开发2.0版......
  • 《ASP.NET Core 6 框架揭秘》第四章读书笔记 - 文件系统
    IFileProvider对象构建了一个抽象的文件系统,我们不仅可以利用该系统提供的统一API读取各种类型的文件,还能及时监控目标文件的变化。 4.1抽象的文件系统IFileProvid......
  • 网络游戏同步法则 -- skywind
    转载出处:http://www.skywind.me/blog/archives/112网路的硬件也有限,而人的创造也无限,在公网平均130ms的Latency下,是不存在“完全的”的同步情况。如何通过消除/隐藏延时,将......
  • Dubbo协议端口的介绍--记一次踩坑
    Dubbo协议端口的介绍dubbo框架一共支持9种协议。其中,默认的,也是最常用的,那就是dubbo协议。既然是网络协议,那么,必然要有端口号。所以,在使用dubbo协议暴露服务时,需要配置d......
  • django-rest framework
    目录(1)Web应用模式及API接口(2)Restful规范(3)drf安装和简单使用(4)源码分析(5)序列化器-Serializer(6)局部和全局响应配置(7)视图(8)路由-Routers(9)认证-Authentication(10)权......
  • KingbaseES V8R3集群运维案例之---failover故障处理
    ​案例说明:此案例,为KingbaseESV8R3集群failover切换时,通用的故障处理方式。通过对failover.log和recovery.log日志的解读,让大家了解KingbaseESV8R3集群failover的恢复......
  • 金蝶AAS-V9精简版使用手册1.6
    1.安装获取中间件安装包(AAAS.V9.ZIP)直接解压即可。1.1.需安装jdk环境,上篇文章1.2.路径没有特定要求,通常放置在/opt下2.初次启动金蝶需要前台启动设置管控密码linux1.......