百度 后端开发 秋招笔试
#软件开发笔面经#
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分边界分跳过。
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个岗位
点赞 评论 收藏
分享
点赞 评论 收藏
分享
11-17 23:17
南京大学 Java 点赞 评论 收藏
分享