提前批wxg爆笑一面

开场四十分钟算法题
1.n栋房子排成一排,用红黄蓝三种颜色的油漆涂,相邻两栋颜色不能一样,每座房子用每种油漆涂的成本可以表示为一个数组,[[5,8,7][6,9,3]]表示第一栋房子用三种油漆的成本分别为5,8,7。返回粉刷全部房子的最低成本
2.最大子序和
3.hardman

反问
下机
面试官人挺好的,准备好了再来吧,笑嘻了
全部评论
第一题应该是n*3的dp吧然后状态转移是dp[i][0]=cost[i][0]+min(dp[i-1][1], dp[i-1][2])这个样子?
6 回复 分享
发布于 07-26 14:38 北京
第一题lc有差不多的题吧 状态机dp
1 回复 分享
发布于 07-26 21:22 浙江
#include<bits/stdc++.h> (35927)#define int long long using namespace std; int dp[1010][3]; int arr[1010][3]; int find_min(int a,int b) { int min_n=INT_MAX; for(int i=0;i<3;i++) { if(i==b) continue; else { min_n=min(min_n,dp[a-1][i]); } } return min_n; } signed main() { int n; cin>>n; for(int i=1;i<=n;i++) { int red; int blue; int yellow; cin>>red>>blue>>yellow; arr[i][0]=red; arr[i][1]=blue; arr[i][2]=yellow; } for(int i=1;i<=n;i++) { for(int j=0;j<3;j++) { dp[i][j]=find_min(i,j)+arr[i][j]; } } int min_n=INT_MAX; for(int i=0;i<3;i++) { min_n=min(dp[n][i],min_n); } cout<<min_n; }能做吗
点赞 回复 分享
发布于 09-13 15:08 江苏
确实有点搞笑
点赞 回复 分享
发布于 08-27 20:08 湖北
忍耐王
点赞 回复 分享
发布于 08-05 15:31 上海
这个第三题hardman是什么?
点赞 回复 分享
发布于 08-01 16:30 北京
这是暑期还是提前批啊
点赞 回复 分享
发布于 07-27 18:01 浙江
我都没有反问,直接跟我说拜拜
点赞 回复 分享
发布于 07-26 15:53 四川
哈基GK
点赞 回复 分享
发布于 07-26 00:41 上海
第一题贪心吧,两个便宜的油漆交替涂,如果是奇数就让最便宜的在第一个,没有比这个更便宜的方案了;第二题双指针维护中间的区间即可;第三题没见过,可以讲讲是什么吗
点赞 回复 分享
发布于 07-25 08:56 北京
忍耐王
点赞 回复 分享
发布于 07-25 03:08 贵州
点赞 回复 分享
发布于 07-24 21:55 广东

相关推荐

评论
29
62
分享

创作者周榜

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