牛客春招刷题训练营 - 2025.4.14 题解

活动地址:牛客春招刷题训练营 - 编程打卡活动

Easy 自守数

简要题意

定义平方的末尾几位等于自身的自然数为自守数,求 内自守数个数。

Solution

枚举范围内每个数 ,假设 ,则 为自守数等价于

Code

void R()
{
	int n,ans=0;
	cin>>n;

	auto len=[&](int x)->int
	{
		int res=1;
		for (;x;res*=10,x/=10);
		return res;
	};

	for (int i=0;i<=n;i++)
		ans+=(i*i%len(i)==i);
	cout<<ans;
	return;
}

Medium 小红的双生串

简要题意

求让一个字符串前半部分为同一种字母,后半部分为同一个字母,最少需要修改多少个位置。

Solution

输出前半部分出现次数最多的字母的出现次数,前半部分长度减去这个次数就是前半部分的代价,后半部分同理。

Code

void R()
{
	string s;
	cin>>s;
	int n=s.size(),ans=0;
	vector<int> cnt(26);
	for (int i=0;i<n/2;i++)
		cnt[s[i]-'a']++;
	ans+=n/2-*max_element(cnt.begin(),cnt.end());
	cnt.assign(26,0);
	for (int i=n/2;i<n;i++)
		cnt[s[i]-'a']++;
	ans+=n/2-*max_element(cnt.begin(),cnt.end());
	cout<<ans;
	return;
}

Hard abb

简要题意

给定字符串 ,求满足 的三元组 个数。

Solution

考虑枚举 ,则贡献为 ,其中 分别是 前后 的出现次数。

我们可以先求出所有字母出现次数,这样再遍历字符串时,就可以维护前后缀字母出现次数。

Code

void R()
{
	int n;
	i64 ans=0;
	string s;
	cin>>n>>s;
	vector<int> pre(26),suf(26);
	for (int i=0;i<n;i++)
		suf[s[i]-'a']++;
	for (int i=0;i<n;i++)
	{
		int p=s[i]-'a';
		pre[p]++,suf[p]--;
		ans+=1ll*(i-pre[p]+1)*suf[p];
	}
	cout<<ans;
	return;
}
#牛客春招刷题训练营#
全部评论

相关推荐

入职一个多月了,来分享一些landing的感受~&nbsp;整体说下:可以打85分,毕竟当时辞职就是想要走出舒适圈,的确也会有些不舒适,但基本上是因为阿里和网易风格有差别,需要一些时间适应&nbsp;我所在的产品线整体风格不卷,加班不严重,周末大家都安排自己的生活,可以安心放下手机,也让我彻底放下“不秒回羞耻症”&nbsp;阿里云团队规模太大,分工很细,人也很多,想搞清楚一件事情要对接好多好多人,要熟悉的流程也贼多,这个过程的确有些累,但我估计只要在大厂都会这样&nbsp;感觉这边做事情自由度更高,换句话说,老板只要结果,过程怎么做自己想办法去&nbsp;凡事凡人都爱讲价值。初次对接的其他部门的同事,也会直接问我,“你对业务的价值是什么”&nbsp;前线上线下接触到的同事估计有四五十个,99%交流都顺畅,有话都直说&nbsp;一个月约了不少coffee&nbsp;talk,即使没有直接的工作关联,大家还都挺热心解答我各种疑惑,很开心&nbsp;和+1&nbsp;沟通很顺畅,一是我刚入职就和她确认了沟通风格,二是我会主动表达自己的一些困惑,寻求帮助。当我不知道怎么和其他团队TL&nbsp;开展协同的时候,她也会帮我丝滑落地&nbsp;另外有几个我师兄给的tips:&nbsp;❶抛开对情绪的关注,过分关注对方是老员工or说了句什么重话or质疑了什么,就没法协作了&nbsp;❷即使不喜欢,在该刷存在感的时候也得刷&nbsp;❸等过了前半年蜜月期,也许你也会感到工作很痛苦&nbsp;新环境让我的状态好了很多,或许是因为还在蜜月期,or团队的风格,or只是还没接触到那么多人和事儿,我也不确定从多久后开始,我也会感到烦躁、痛苦。&nbsp;那,既然不知道,当然是能快乐一天是一天啦~&nbsp;还有就是,我相信这一次的转变,我个人在心境上的调整和成长也起到了很大的作用。&nbsp;无论世界怎样,把情绪掌握在自己手中。阿里云2026届可转正实习生招聘正式开启!【公司介绍】阿里云是全球领先的云计算及人工智能科技公司,坚持让计算成为公共服务,助力全球客户加速价值创新。【招聘岗位】技术类、运营类、设计类、营销类、产品类、内容类、职能类等(每位同学仅有1次投递机会,2个意向)【工作地点】杭州、北京、上海、深圳、成都等城市【面向人群】海内外院校2026届毕业生,毕业时间在2025年11月-2026年10月内【内推步骤】点击「内推链接」开启内推-&amp;amp;gt;查看内推职位/部门-&amp;amp;gt;提交个人信息-&amp;amp;gt;点击邮件内链接确认接受内推,补充意向并完善简历-&amp;amp;gt;内推成功🎁内推一键投递:https://careers.aliyun.com/campus/qrcode/apply/positions?code=yzYD/K3PP/D42kc4e1WhOePAeAX7co5ZGo9MaGDwhhQ=&nbsp;&nbsp;&nbsp;&nbsp;(内推简历优先筛选,后续有疑问/流程问题欢迎联系)使用内推码简历优先筛选,有任何问题包括进度查询可以私信我,内推后在评论区留言【姓名缩写+岗位】,方便捞人和确认投递状态 #春招#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#内推#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#内推码#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#阿里云#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务