4.12 美团笔试个人思路
1 最少操作次数就是将数组中除出现次数最多的元素之外的所有元素删除,即 n - (最大出现频次)。
2 每个a[i]生成一段序列[1,2,…,a[i]],其中该段内部只有以1开头的前缀能构成排列,贡献a[i]个排列。
对于相邻两段,通过舍弃前段的一部分后缀(不含1)和取后段的前缀拼接,满足排列条件的方案数为min(a[i+1], a[i]-1)。
3 先利用三角形外接圆公式计算两个三角形外接圆的圆心和半径。
再根据两圆圆心距离和半径关系分类讨论:相离返回0、包含返回小圆面积、部分相交利用扇形加减公共三角形面积求解。
2 每个a[i]生成一段序列[1,2,…,a[i]],其中该段内部只有以1开头的前缀能构成排列,贡献a[i]个排列。
对于相邻两段,通过舍弃前段的一部分后缀(不含1)和取后段的前缀拼接,满足排列条件的方案数为min(a[i+1], a[i]-1)。
3 先利用三角形外接圆公式计算两个三角形外接圆的圆心和半径。
再根据两圆圆心距离和半径关系分类讨论:相离返回0、包含返回小圆面积、部分相交利用扇形加减公共三角形面积求解。
全部评论
第三题做不了一点,三角形外接圆怎么算啊,做完了第一题第二题还有点沾沾自喜,觉得大厂笔试好像也不过如此,马上就给我上了一课
相关推荐
点赞 评论 收藏
分享

点赞 评论 收藏
分享
04-12 12:12
北京师范大学 算法工程师 编程题第二题那个支持度的题一直都只过了25%的样例不懂为啥😭😭😭😭难道pair之间有顺序吗?可是题目也没说有什么顺序啊,有没有大佬解答 #笔试# #美团# 绝了考b溃了😇😇😇😇😇

点赞 评论 收藏
分享
点赞 评论 收藏
分享