爱奇艺校招笔试题 求完美解答

校招题,求解答。自己写的代码只过了20%。


#爱奇艺#
全部评论
http://paste.ubuntu.com/25836498/ 二分就好了
点赞 回复 分享
发布于 2017-10-28 21:45
我的想法是: 设X的每一位数为x1,x2,x3,x4....,SUM的每一位数为A,B,C,D.....。 然后可以列出矩阵: x1    0       0      0    =    A x1    x2     0      0    =    B x1    x2    x3     0     =    C x1    x2    x3    x4    =    D 只要求矩阵是否有解就行。 因为再从X算出SUM的过程中会产生进位,所以A最多可能退两位,B可能退三位。。。。 然后要求的矩阵就数不清多少了,,,然后就关了网页了,,,,
点赞 回复 分享
发布于 2017-10-28 21:31
暂时没想到怎么反推,那么只能正这来,正着来就是试数。最快的方法就是二分。
点赞 回复 分享
发布于 2017-10-28 21:55
在sum*9/10到sum区间,二分法 PS:我觉得你可能需要一个快捷键 shift + command + 3/4,嘿嘿
点赞 回复 分享
发布于 2017-10-28 21:32
二分法好像能过90。。最后会超时 我是找规律法递归。。50% 不知道被什么样的测试用例挂了。。
点赞 回复 分享
发布于 2017-10-29 00:11
我擦。我咋没想过暴力搜解呢。我的解法是,取出最高位数字,用这个数字按照原数长度扩展,如果比原数大,就按这个方法但取小一个的数字扩展。原数减去这个数后递归。这样就能找到逐位原数字。有一种情况是没有的,就是某次递归数字以10开头的,其扩展数是0,陷入死循环,直接判断一下返回-1。一顿描述后然而只能过60%。。。。
点赞 回复 分享
发布于 2017-10-29 10:41
修改后的完美解法: https://www.nowcoder.com/discuss/59867
点赞 回复 分享
发布于 2017-10-29 13:40
写了个解题报告. http://blog.csdn.net/flushhip
点赞 回复 分享
发布于 2017-10-29 14:37

相关推荐

尊嘟假嘟点击就送:加v细说,问题很大
点赞 评论 收藏
分享
威猛的小饼干正在背八股:挂到根本不想整理
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务