蚂蚁笔试

有没有佬讲下第三题
全部评论
欧拉筛找出1e6以内所有质数primes。求输入数组sum,遍历primes, 如果sum%primes[i]==0 && sum/primes[i]>=n, 则进入下一步,否则直接跳过。下一步,进行一些条件过滤,如果该质数是偶数(即为2),则数组中不能有奇数(这在开始读数据时就可以判断),否则直接跳过;如果奇数,则数组中的偶数至少应变为该奇数*2,必须满足sum/primes[i]>=n+ou(偶数个数),否则跳过。这种做法可以过95%(过滤条件并不完善,所以会有没考虑到的情况)
4 回复 分享
发布于 2024-03-16 12:19 陕西
他这题目意思无非就是总和不能改变,单个数的奇偶不能变,你把和一加然后把他的素数都拿出来尝试。如果这个素数是偶数,那么之前的数组里就不能有奇数,不然就直接pass,如果全偶数看一下够不够一人分一个的,如果够就OK,不够也pass如果这个素数是奇数,也到原数组里面去分,假如原数组里面有x奇y偶,那么你至少要分x+2y这个素数出来,如果不够分就pass,如果够分看看分完之后还剩多少个这个素数,如果剩偶数个就OK,剩奇数个pass
2 回复 分享
发布于 2024-03-16 12:59 浙江
算法还是开发卷
点赞 回复 分享
发布于 2024-03-16 11:50 江苏

相关推荐

评论
点赞
3
分享

创作者周榜

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