0922微软笔试100+100+90

三道题,一个半小时,三道题,难度相当于leetcode medium, 用cpp写的


第一题:100%
思路:这道题相当于去除“重复”后的数组大小。不过“重复”的概念是奇数位置可以交换,偶数位置可以交换,为重复的,因为可以连续交换。
所以取出奇数位置的字符组成s1,偶数位置的组成s2,然后把s1, s2分别sort, 然后把新组成的字符串s1+s2放入set中,返回set的大小,即最终不重复的数目。


第二题:100%
思路:无限制背包问题。
1,先安装要求构造出所需要的素数,这个用最简单的o(n2)算法即可,放入数组v中
2,  当 j >= v[i]时,dp[j] = min(dp[j - v[i]] + 1, dp[j]) ;
3, dp[input1] 就是最后的答案,最少的数量。


第三题 90%
思路:回文数字问题
对每个数字进行暴力判断,大概能过50%, 后面发现如果这个数本身是回文,那么一定能等于某个数和它的回文之和。所以先进行判断是否本身回文,这样优化后过了90%。
暴力判断的时候,注意不要从1开始, 比如8位数t, t  = 12345678 = a + b, 那么 a和b至少是7位数,所以从10^7次方开始枚举,到t / 2 即可终止。
还有1个case超时了,暂时没其他方法。

#微软##笔试题目#
全部评论
100 80 90 第二题自己也不知道为啥不能100
点赞 回复 分享
发布于 2019-09-22 21:21
第三题,131也是回文,写不成吧
点赞 回复 分享
发布于 2019-09-22 21:23
我第二题就是用这个方法 无法ac 逼疯了
点赞 回复 分享
发布于 2019-09-22 21:31
第一题不用sort 都是小写字母用2个数组存次数就行了
点赞 回复 分享
发布于 2019-09-22 21:38
100 90 60 感觉凉了
点赞 回复 分享
发布于 2019-09-22 21:39
同100 100 90   然而发现用的方法都不如楼主有逻辑😂    不知道自己咋过的😂😂😂😂
点赞 回复 分享
发布于 2019-09-22 21:43
问一下 微软笔试题是全英文???
点赞 回复 分享
发布于 2019-09-25 18:27
想问下,,,你们ac出来的分数是在在哪看的。。。。。
点赞 回复 分享
发布于 2019-09-25 18:59
请问有题目吗?
点赞 回复 分享
发布于 2019-09-25 21:59
老哥,收到面试通知了吗?
点赞 回复 分享
发布于 2019-09-25 23:30
同样100 100 90,也没收到面试,不会要全a吧
点赞 回复 分享
发布于 2019-09-26 08:41
可以用本地IDE编吗
点赞 回复 分享
发布于 2019-09-27 09:10

相关推荐

头像
11-06 10:58
已编辑
门头沟学院 嵌入式工程师
双非25想找富婆不想打工:哦,这该死的伦敦腔,我敢打赌,你简直是个天才,如果我有offer的话,我一定用offer狠狠的打在你的脸上
点赞 评论 收藏
分享
牛客868257804号:九个中铁八个中建
点赞 评论 收藏
分享
评论
6
27
分享
牛客网
牛客企业服务