2021-04-01 携程笔试题目

SQL结构分析
时间限制: 3000MS
内存限制: 589824KB
题目描述:
给定一个完整的SQL,请编写一个函数,找出SQL中的表名。部分SQL中可能生成了中间表,请不要输出这些表名。同一个表名只输出一次即可。
输入描述
完整的SQL,以两个换行结尾。
输出描述
SQL中所有的原始表名,每行一个表名。
如果有多个表名,按照出现的先后顺序输出。
样例输入
select t.id, t.name, t.tag_id
from (
    select user.id, user.name, tag.tag_id
    from user
    inner join user_tag
) t
样例输出
user
user_tag 
商旅出行优惠套餐计算最低成本
时间限制: 3000MS
内存限制: 589824KB
题目描述:
携程商旅最近上线了一批优惠权益套餐,作为公司的一名采购, 为了降低公司差旅出行成本,  你决定购买员工使用频率较高的各项权益, 因此需要决定购买哪些套餐,不仅需要覆盖要求的具体权益项, 同时确保成本最低.
携程商旅提供n种不同的权益: 酒店优惠券、接送机立减券、超级会员等, value[0], value[1], ... , value[n-1]。
将各类权益组合成权益包进行出售,package[0], package[1], ... , package[m-1]每种权益包可能包含一种或多种权益。
权益包对应的价格分别为price[0], price[1], ... , price[m-1],price[i]为一个整数,代表第i个权益包对应的价格。
用户指定需要覆盖的k种权益, value[0], value[1], ... , value[k-1](1<=k<=n)
计算出所需最低花费,即从m个权益包中选取出一种组合,能够满足需要的k种权益,同时成本最低。
        如果提供的权益包组合不能满足需要的k种权益,则输出 -1
输入描述
第一行:n(如3种权益, 分别为: 1,2,3, 1<n<10000);
第二行:package[](权益包之间空格隔开,权益之间逗号隔开);
第三行:price[](权益包对应的价格);
第四行:value[](用户需要覆盖的具体权益)
输出描述
5(权益包1 + 权益包3,满足需要的权益1,2,3, 对应价格分别为3,2成本最低)
样例输入
3
1,2 2,3 1,3
3 4 2
1 2 3
样例输出
5
提示
样例一共有3种权益 1,2,3;有三种权益组合:(1,2),(2,3),(1,3)对应的价格为:3,4,2;你需要的权益为1,2,3。
满足权益组合: 包1 + 包2 = 3 + 4 = 7元, 包1 + 包3 = 3 + 2 = 5元.
满足最低成本: 包1 + 包3 = 3+2
最终输出结果: 5
规则
自己太菜,一题都没A出来,欢迎大佬下方留言结题方法!!!

#携程##笔经#
全部评论
楼主,携程后端笔试只有两道算法题吗?
点赞 回复 分享
发布于 2021-05-10 19:33
楼主投的什么岗位
点赞 回复 分享
发布于 2021-04-15 09:54
我有个最小费用最大流的做法,奈何没有板子
点赞 回复 分享
发布于 2021-04-01 22:17
第一题正则,55% 第二题回溯,76%
点赞 回复 分享
发布于 2021-04-01 21:06

相关推荐

程序员牛肉:主要是因为小厂的资金本来就很吃紧,所以更喜欢有实习经历的同学。来了就能上手。 而大厂因为钱多,实习生一天三四百的就不算事。所以愿意培养你,在面试的时候也就不在乎你有没有实习(除非是同级别大厂的实习。) 按照你的简历来看,同质化太严重了。项目也很烂大街。 要么换项目,要么考研。 你现在选择工作的话,前景不是很好了。
点赞 评论 收藏
分享
05-09 12:23
已编辑
华南理工大学 Java
野猪不是猪🐗:给他装的,双九+有实习的能看的上这种厂我直接吃⑨✌们拿它练练面试愣是给他整出幻觉了
点赞 评论 收藏
分享
评论
4
15
分享

创作者周榜

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