进阶110 level
获赞
15
粉丝
0
关注
3
看过 TA
1
绵阳师范学院
2012
运维工程师
IP属地:未知
暂未填写个人简介
私信
关注
2021-11-15 15:26
已编辑
绵阳师范学院 运维工程师
解题思路: 1.判断一个数是否为素数:在这里需要注意的是全部数判断会超时,所以选择半位数来判断可以节省时间。选用原理:一个数能被另一个数除尽,则这个数也能被它的2倍数除尽,一个数不能被另一个数除尽则也不能被它的2倍数除尽。 2.判断最大匹配数: 这个是参考已有的答案来的,一个列表里的数与另一个列表里的每一个数判断,如果他们的和是素数就标记,若这个数还有另一个匹配的数,则看看之前匹配的数是否还有其他匹配的数,有则这个数就被当前数替代,没有则跳过。如此一来得到的数即为最大匹配数 3.数的分配与具体判断实现: 奇数和奇数相加与偶数和偶数相加得到的是偶数不可能是素数,只能是奇数和偶数相加才可能存在素数...
牛客876645442号:"#判断第i位偶数是否被匹配或者它的匹配奇数是否有其他选择,如果有其他选择,则当前的奇数匹配第i位偶数" --解释:参与本轮循环的奇数A寻找到配对的偶数B,【偶数B是否在历史循环中被A以外的奇数C匹配到过】或【如果偶数B被A以外的奇数C匹配到过,再看C是否还有其他可以选择的偶数】,如果B之前没有配对奇数 或 之前配对的奇数C还有其他可以配对的偶数,则偶数B的配对奇数由C标记为A。
0 点赞 评论 收藏
分享
关注他的用户也关注了:
牛客网
牛客企业服务