百度 后端开发 秋招笔试

#软件开发笔面经#
15选择5多选3算法

1.输入n输入k,n表示1-n的数字,k表示选择k个数字,当选择的数字i+1没有被选择时,视为选择成功,积分+1,求最终积分最大值。

思路:分奇偶n/2和n/2+1时所能获得的最大积分,n-k+1是当k超过所能获得的最大积分时,能获取到的积分。

2.n长度的字符串,共操作n次,把位置i的字符移动到最后,i是0-n-1,求最终操作完成时的字符串。

思路:模拟,按题目要求移动字符,输出结果。

3.麻将,看能有多少种类型的牌可以胡牌。

思路:数字必须是>3的,因为每种牌4张,14张才能胡牌,应该可以通过找规律AC很大一部分。没打过麻将,拿10分边界分跳过。
全部评论

相关推荐

投递百度等公司10个岗位
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务