拼多多笔试题
有点为难人了。
第一题:先统计对称位置上不同的字符个数count,1. 奇数情形,k>=count的时候是yes,因为多出来的操作可以改变中间的字符 2. 偶数情形,同样是k>=count的时候是yes,这是因为多出来的k-count次操作可以先不停改错某个字符k-count-1次最后一次改对。
第二题:考虑x个红球y个白球, x+y=n,红球不相邻所以把x个红球插入到白球产生的y+1空中,枚举所有合法的x,y组合,答案是\sum C(n-x+1, x)
第三题:和为m的倍数等价于x mod m + y mod m = m,先按照mod m剩余类统计,然后两两匹配,比如1和m - 1匹配,匹配完之后再找数字比较多的那一组里面的相同的数,不用关心被匹配的数是什么,只要后面直接统计相同的数就可以了。因为被匹配的数是可以随意找的。
第四题:记录dp[i][0/1]表示到第i位交换和不交换两个数组的最大值,在dp的过程中记录cnt[i][0/1]表示交换和不交换的最小次数。
第一题:先统计对称位置上不同的字符个数count,1. 奇数情形,k>=count的时候是yes,因为多出来的操作可以改变中间的字符 2. 偶数情形,同样是k>=count的时候是yes,这是因为多出来的k-count次操作可以先不停改错某个字符k-count-1次最后一次改对。
第二题:考虑x个红球y个白球, x+y=n,红球不相邻所以把x个红球插入到白球产生的y+1空中,枚举所有合法的x,y组合,答案是\sum C(n-x+1, x)
第三题:和为m的倍数等价于x mod m + y mod m = m,先按照mod m剩余类统计,然后两两匹配,比如1和m - 1匹配,匹配完之后再找数字比较多的那一组里面的相同的数,不用关心被匹配的数是什么,只要后面直接统计相同的数就可以了。因为被匹配的数是可以随意找的。
第四题:记录dp[i][0/1]表示到第i位交换和不交换两个数组的最大值,在dp的过程中记录cnt[i][0/1]表示交换和不交换的最小次数。
全部评论
佬,问一下需要双机位吗?
第三题存得List<List<int[]>> 匹配找最多的怎么找呢
最后一题我也这么写的,只有85%
相关推荐
2025-12-03 19:04
门头沟学院 前端工程师
FOX2003:还没学后端框架吧,看你第一个项目用的mockjs。第一个项目太老而且可能是从github上扒的(我的课设就是这个),第二个主要依靠AI的能力,而且前端项目找前端实习的话,留个github地址好点,主要还是前端要求越来越高了。另外,去***看看,符合就投,boss投的多,HR工作量就大,没功夫多聊 点赞 评论 收藏
分享
2025-12-26 10:52
河北传媒学院 Java 点赞 评论 收藏
分享
