金山云 20220406笔试
本人的第一次笔试,没什么经验答的不好
20道选择题
2道编程题
1. 魔法师:将一个数字加一或者乘二,问从1到输入的N需要几步。
题目好像挺简单的,我写了dp和递归两种解法,但是最后都只AC了20%多一点,估计是测试用例比较鸡贼。
后来跟室友交流才知道还可以贪心地倒着算,把时间复杂度降成logn。。。
2. 砍树:n行m列的树林,对于第i行j列的树,小明砍掉需要话花费a[i][j]的力气。现在小明要在树林中选择一个正方形,正方形边界和内部的所有树全部砍掉,但是小明力气总和为C。问正方形的最大面积是多少?
前缀和暴力就过了百分之十几。