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

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

Easy 构造C的歪

简要题意

找到一个整数 ,使得 排序后构成等差数列。

Solution

是等差邻项,构造下一项就好。

Code

void R()
{
	i64 a,b,c;
	cin>>a>>b;
	if (a>=b) swap(a,b);
	c=2*b-a;
	cout<<c;
	return;
}

Medium 查找两个字符串a,b中的最长公共子串

简要题意

的最长公共子串。若有重复,输出短串中最早出现的那个。

Solution

数据范围很小,暴力枚举长串子串用 hash/map/unordered_map 记录,在短串中从长到短从前到后枚举子串 check 即可。

Code

void R()
{
	map<string,bool> mp;
	string s,t;
	cin>>s>>t;
	if (s.size()<t.size()) swap(s,t);
	int n=s.size(),m=t.size();
	for (int i=0;i<n;i++)
		for (int j=1;i+j<=n;j++)
			mp[s.substr(i,j)]=1;

	for (int j=m;j>=1;j--)
		for (int i=0;i+j<=m;i++)
			if (mp.count(t.substr(i,j)))
			{
				cout<<t.substr(i,j)<<'\n';
				return;
			}
	return;
}

Hard 气球谜题

简要题意

个气球排成一排,每个气球有一个初始颜色,颜色共有三种。

你可以花费 的代价对第 个气球染色,求让所有同色气球连续摆放的最小代价。

Solution

状压 DP。

考虑确定第 个气球的代价需要什么前置条件?

需要确定第 个气球是什么颜色,还要知道之前有没有摆过这个颜色的气球,第 个气球是不是这个颜色。

于是想到设 表示摆完第 个气球,已经摆过气球颜色的状压为 S,第 个气球的颜色是 ,且摆放方案合法的最小代价。

转移方程为:

Code

void R()
{
	int n;
	string s;
	cin>>n>>s;
	vector<int> t(n);
	vector<vector<array<i64,3>>> dp(n,vector<array<i64,3>>(8,{inf,inf,inf}));
	for (int &x:t) cin>>x;
	for (int i=0;i<3;i++)
		if (s[0]=='0'+i)
			dp[0][1<<i][i]=0;
		else
			dp[0][1<<i][i]=t[0];

	//dp[i-1][S][k]->dp[i][S|(1<<j)][j]
	for (int i=1;i<n;i++)
		for (int j=0;j<3;j++)
			for (int k=0;k<3;k++)
				for (int S=0;S<8;S++)
				{
					if ((S>>j&1)&&k!=j)
						continue;
					i64 con=dp[i-1][S][k];
					if (s[i]!='0'+j) con+=t[i];
					dp[i][S|(1<<j)][j]=min(dp[i][S|(1<<j)][j],con);
				}

	i64 ans=inf;
	for (int i=0;i<8;i++)
		for (int j=0;j<3;j++)
			ans=min(ans,dp[n-1][i][j]);
	cout<<ans<<'\n';
	return;
}
#牛客春招刷题训练营#
全部评论

相关推荐

啊,距离开始实习已经快过去一年了总结回顾一下这段宝贵都时光,也希望能给学弟学妹们一些帮助~1.&nbsp;入职.淘天的入职还是很丝滑的~很贴心的是会有7天免费的亲橙客栈,这点真的太友好了,给租房入职很好的缓冲。btw&nbsp;亲橙客栈太舒服了,大房间配上天猫精灵加上豪华早餐,导致一些同期的实习同学直接住了几个月的客栈哈哈哈哈2.&nbsp;园区.有一说一,第一次进园区的时候真被震撼到了,太大了,里面都是用自行车通勤的,园区里还有一些神奇的雕像🗿,不过晚上有时候真有点吓人就是了哈哈哈3.landing.淘天的landing体验也是很好的,没有一上来就让干活儿,有详细的文档以及几天的时间慢慢熟悉,还有师兄的新手保护,第一天师兄中午就带着逛园区还看了大鹅!真的园区生态不要太好有湖有桥,闲的时候走走真的能降一下san值4.&nbsp;活动.不得不说活动真的很多,甚至有点参加不过来😂各个节日都会有些小礼品小投喂,六一的时候有可爱的小小小小一点点奶茶然后有时候发超大袋子,这个是真好用,搬家利器。然后还有各种参与活动,稍微玩一些小游戏就有抽奖,拿过挂脖风扇,一整套盲盒啥的5.&nbsp;运动.运动这一块也是狠狠满足我了免费健身房和台球室让公司居然成为周末好去处(虽然后面次数多了还是觉得会班味变重哈哈哈)部门每周四的羽毛球日也是解压+早点下班。最重要的是排球🏐!几个园区基本上每周都能有一次排球活动,直接怒省一大笔球费,而且大家的水平都挺不错,我还有幸在第二赛季的排球赛拿下MVP&nbsp;和最佳主攻嘿嘿嘿6.&nbsp;学习.淘天的学习氛围当然当然很好,除了师兄手把手带,还有一些活动,记得参加过“拜托啦!师兄”活动,一边嘎嘎吃一边和其他同届实习同学交流,真的是很不错的体验😋大概就是这样~也很幸运在淘天转正了,祝自己几个月后的工作顺利😋😋#淘天实习#&nbsp;淘天26届春招&nbsp;#有趣的体验#&nbsp;有趣的生活&nbsp;#实习日记
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务