字节 0908 笔试
4道编程题,做是都做了,就是结果。。。
感觉思路都挺对的呀为什么!!!
第一题 95% 懒得打字了
第二题 20% 题目:给一个数字序列长度为2*n-1,每次可以把n个数变为相反数,不限制次数,问总和最多能达多少
思路:我感觉除了【n为偶数 且 原始负数个数为奇数】其他情况都可以全部翻为正
然后这个情况就会最终只剩一个负数,把绝对值最小的减掉即可
我试了几组,感觉满足这个想法,但是结果也说明这个结论是不太对的,目前没想出来反例
第三题 20% 题目:奇妙树的定义是对于一个树,任意一个节点的权重需要≥子节点的权重和
思路:首先建立映射关系<父节点, 子节点列表>
然后用递归,给该节点的所有子节点权重加总。判断当前节点是否需要更新为子节点的权值和。
递归终止条件是,map不含该索引时,直接返回权重。
想法:首先题目说的是“子节点“,我开始用的是所有子节点,后来发现用直接子节点答案更高
其次,在确定边时,题目给的是两个节点是否存在边 但是没说节点的顺序,我是直接用前一个当父节点
不知道是不是节点顺序的原因。除此之外我真的想不明白为什么通过率这么低,我感觉思路很清晰啊!
第四题5% 题目是四色染格,我用的岛屿问题的思想dfs,写代码写了近20分钟,
考虑到了不能和上/左的颜色一致、看右侧是否染色等等,感觉考虑的挺全的,但是结果这么低..淦
感觉思路都挺对的呀为什么!!!
第一题 95% 懒得打字了
第二题 20% 题目:给一个数字序列长度为2*n-1,每次可以把n个数变为相反数,不限制次数,问总和最多能达多少
思路:我感觉除了【n为偶数 且 原始负数个数为奇数】其他情况都可以全部翻为正
然后这个情况就会最终只剩一个负数,把绝对值最小的减掉即可
我试了几组,感觉满足这个想法,但是结果也说明这个结论是不太对的,目前没想出来反例
第三题 20% 题目:奇妙树的定义是对于一个树,任意一个节点的权重需要≥子节点的权重和
思路:首先建立映射关系<父节点, 子节点列表>
然后用递归,给该节点的所有子节点权重加总。判断当前节点是否需要更新为子节点的权值和。
递归终止条件是,map不含该索引时,直接返回权重。
想法:首先题目说的是“子节点“,我开始用的是所有子节点,后来发现用直接子节点答案更高
其次,在确定边时,题目给的是两个节点是否存在边 但是没说节点的顺序,我是直接用前一个当父节点
不知道是不是节点顺序的原因。除此之外我真的想不明白为什么通过率这么低,我感觉思路很清晰啊!
第四题5% 题目是四色染格,我用的岛屿问题的思想dfs,写代码写了近20分钟,
考虑到了不能和上/左的颜色一致、看右侧是否染色等等,感觉考虑的挺全的,但是结果这么低..淦
全部评论
同问 为啥奇妙树我也一直10%
第一题我用贪心,示例对了,提交0%😂
相关推荐