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

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

Easy 小红的顺子

简要题意

给一个由 挖去一位得到的数组,求这一位前后数字个数的

Solution

暴力寻找被挖去的位即可。

Code

void R()
{
	int n;
	cin>>n;
	vector<int> a(n-1);
	for (int &x:a) cin>>x;
	for (int i=0;i<n;i++)
		if (a[i]!=i+1)
		{
			cout<<max(i,n-i-1);
			return;
		}
	cout<<n-1;
	return;
}

Medium 小红的字符生成

简要题意

你有 个字母 a,每次可以将两个相同字母合成为字典序大一位的字母,求最后得到的最短字符串。

Solution

字典序第 大的字母相当于 a,于是转化为二进制拆分问题。

Code

void R()
{
	int x;
	cin>>x;
	for (char c='a';x;x/=2,c++)
		if (x&1) cout<<c;
	return;
}

Hard 最少的完全平方数

简要题意

求最少需要多少个完全平方数,使得它们的和可以表示正整数

Solution

表示 的答案,有转移:

Code

void R()
{
	constexpr int inf=1e9;
	int n;
	cin>>n;
	vector<int> dp(n+1,inf);
	dp[0]=0;
	for (int i=1;i<=n;i++)
		for (int j=1;j*j<=i;j++)
			dp[i]=min(dp[i],dp[i-j*j]+1);
	cout<<dp[n];
	return;
}
#牛客春招刷题训练营#
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-10 11:55
点赞 评论 收藏
分享
湫湫湫不会java:先投着吧,大概率找不到实习,没实习的时候再加个项目,然后把个人评价和荣誉奖项删了,赶紧成为八股战神吧,没实习没学历,秋招机会估计不多,把握机会。或者说秋招时间去冲实习,春招冲offer,但是压力会比较大
点赞 评论 收藏
分享
06-25 09:33
厦门大学 Java
程序员饺子:现在日常估计没啥hc了,等到八月多估计就慢慢有了。双九✌🏻不用焦虑的
投递快手等公司7个岗位
点赞 评论 收藏
分享
07-15 11:43
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务