京东 20220429笔试
30道选择题+2道编程题
1、铺地砖:用1*k大小的砖头去铺满n*k的地面,问有多少种铺法?
多画几个图找一下规律就可以看出来:
1 <= n < k时,只能有一种铺法;
n = k时,只能有两种铺法(全部横着或者竖着);
n > k时,从n*k的顶端看,可以横着放一个1*k的砖头,即dp[n-1];也可以竖着放k个1*k的砖头,即dp[n-k]。则有dp[n] = dp[n-1]+dp[n-k]。
2、wifi:路由器有一个距离为k可以通信的限制,距离定义为|x1-x2|+|y1-y2|。输入是n个路由器和它们的位置,问能够使任意两个路由器在允许中继的前提下互相通信的k最小值。
最小生成树算法,可以参考lc1584,一般把计算最小生成树的权重和(这里即为距离和)改成计算权重最大即可。
#京东笔试##实习##笔试题目##Java#