当前位置: 首页 > news >正文

现在用JAVA做网站用什么框架百度服务中心投诉

现在用JAVA做网站用什么框架,百度服务中心投诉,网站备案 英文,国外做外贸的小网站本文涉及知识点 贡献法 LeetCode2262. 字符串的总引力 字符串的 引力 定义为:字符串中 不同 字符的数量。 例如,“abbca” 的引力为 3 ,因为其中有 3 个不同字符 ‘a’、‘b’ 和 ‘c’ 。 给你一个字符串 s ,返回 其所有子字符…

本文涉及知识点

贡献法

LeetCode2262. 字符串的总引力

字符串的 引力 定义为:字符串中 不同 字符的数量。
例如,“abbca” 的引力为 3 ,因为其中有 3 个不同字符 ‘a’、‘b’ 和 ‘c’ 。
给你一个字符串 s ,返回 其所有子字符串的总引力 。
子字符串 定义为:字符串中的一个连续字符序列。

示例 1:
输入:s = “abbca”
输出:28
解释:“abbca” 的子字符串有:

  • 长度为 1 的子字符串:“a”、“b”、“b”、“c”、“a” 的引力分别为 1、1、1、1、1,总和为 5 。
  • 长度为 2 的子字符串:“ab”、“bb”、“bc”、“ca” 的引力分别为 2、1、2、2 ,总和为 7 。
  • 长度为 3 的子字符串:“abb”、“bbc”、“bca” 的引力分别为 2、2、3 ,总和为 7 。
  • 长度为 4 的子字符串:“abbc”、“bbca” 的引力分别为 3、3 ,总和为 6 。
  • 长度为 5 的子字符串:“abbca” 的引力为 3 ,总和为 3 。
    引力总和为 5 + 7 + 7 + 6 + 3 = 28 。
    示例 2:
    输入:s = “code”
    输出:20
    解释:“code” 的子字符串有:
  • 长度为 1 的子字符串:“c”、“o”、“d”、“e” 的引力分别为 1、1、1、1 ,总和为 4 。
  • 长度为 2 的子字符串:“co”、“od”、“de” 的引力分别为 2、2、2 ,总和为 6 。
  • 长度为 3 的子字符串:“cod”、“ode” 的引力分别为 3、3 ,总和为 6 。
  • 长度为 4 的子字符串:“code” 的引力为 4 ,总和为 4 。
    引力总和为 4 + 6 + 6 + 4 = 20 。
    提示:
    1 <= s.length <= 105
    s 由小写英文字母组成

贡献法

n = s.length
累计s[i]的对各子串贡献的引力。
s[left…r] 如果有相等的字符,则引力算到第一个字符上,下标最小字符。
令和s[i]相等的前一个下标为i1,则s[i]对符合以下条件的子数组贡献1:
[left,r] ,left ∈ \in (i1,i] r ∈ \in [i,n)
累计: (i-i1)*(n-i)
为了不处理边界情况v[0] =-1。

代码

核心代码

class Solution {
public:long long appealSum(string s) {vector<vector<int>> indexs(26, vector<int>(1, -1));const int N = s.length();for (int i = 0; i < N; i++) {indexs[s[i] - 'a'].emplace_back(i);}long long llRet = 0;for (const auto& v : indexs) {for (int i = 1; i < v.size(); i++) {llRet += (long long)(v[i] - v[i - 1]) * (N - v[i]);}}return llRet;}
};

单元测试

template<class T1, class T2>
void AssertEx(const T1& t1, const T2& t2)
{Assert::AreEqual(t1, t2);
}template<class T>
void AssertEx(const vector<T>& v1, const vector<T>& v2)
{Assert::AreEqual(v1.size(), v2.size());for (int i = 0; i < v1.size(); i++){Assert::AreEqual(v1[i], v2[i]);}
}template<class T>
void AssertV2(vector<vector<T>> vv1, vector<vector<T>> vv2)
{sort(vv1.begin(), vv1.end());sort(vv2.begin(), vv2.end());Assert::AreEqual(vv1.size(), vv2.size());for (int i = 0; i < vv1.size(); i++){AssertEx(vv1[i], vv2[i]);}
}namespace UnitTest
{	string s;TEST_CLASS(UnitTest){public:TEST_METHOD(TestMethod00){s = "c";auto res = Solution().appealSum(s);AssertEx(1LL, res);}TEST_METHOD(TestMethod03){s = "cc";auto res = Solution().appealSum(s);AssertEx(3LL, res);}TEST_METHOD(TestMethod01){s = "abbca";auto res = Solution().appealSum(s);AssertEx(28LL, res);}TEST_METHOD(TestMethod02){s = "code";auto res = Solution().appealSum(s);AssertEx(20LL, res);}};
}

扩展阅读

视频课程

先学简单的课程,请移步CSDN学院,听白银讲师(也就是鄙人)的讲解。
https://edu.csdn.net/course/detail/38771

如何你想快速形成战斗了,为老板分忧,请学习C#入职培训、C++入职培训等课程
https://edu.csdn.net/lecturer/6176

相关推荐

我想对大家说的话
《喜缺全书算法册》以原理、正确性证明、总结为主。
按类别查阅鄙人的算法文章,请点击《算法与数据汇总》。
有效学习:明确的目标 及时的反馈 拉伸区(难度合适) 专注
闻缺陷则喜(喜缺)是一个美好的愿望,早发现问题,早修改问题,给老板节约钱。
子墨子言之:事无终始,无务多业。也就是我们常说的专业的人做专业的事。
如果程序是一条龙,那算法就是他的是睛

测试环境

操作系统:win7 开发环境: VS2019 C++17
或者 操作系统:win10 开发环境: VS2022 C++17
如无特殊说明,本算法用**C++**实现。

http://www.dt0577.cn/news/20356.html

相关文章:

  • 建材在哪些网站做世界企业排名500强
  • 程序_做彩票源码网站开发汕头网站建设技术外包
  • 虎门有没有做网站公司如何推广app更高效
  • 网站转化微信小程序做销售有什么技巧和方法
  • 无锡手机网站建设方案宁德市人民医院
  • 郑州网站建设特色游戏推广一个月能拿多少钱
  • 国外购物网站建设湖南关键词优化首选
  • 破解wordpress隐藏内容跟我学seo从入门到精通
  • 如何传图片做网站站长工具高清无吗
  • php做在线直播网站微商引流人脉推广软件
  • 政府网站建设网站维护百度app下载官方免费最新版
  • 网站的banner做多大爱站网关键词查询
  • 小程序模板消息推送深圳seo推广公司
  • 网站logo修改怎样在百度上注册自己的店铺
  • 个人网站制作教程视频人工在线客服
  • 商业网站制作seo公司官网
  • 在线播放的网站怎么做怎么自己制作一个网站
  • 网站建设方案文本模板百度竞价排名利弊
  • 北京网站建设最新消息seo域名综合查询
  • 小型电子商务网站网页设计谷歌外链代发
  • 做平台网站怎么赚钱百度搜索关键词统计
  • 上海网站建设联系电话seo推广哪家好
  • 商城网站是免费开吗站长之家权重
  • 做网站好多钱艾滋病阻断药
  • 西安php网站建设近期热点新闻
  • 东莞个人做网站网站注册页面
  • 网站建设管理维护责任书快速排名优化系统
  • 山西企业模板建站最有效的推广方法
  • a96中华室内设计网温州seo网站推广
  • 展会网站建设外贸网站免费建站