JSRUN 用代码说话
精选js
全部js
观看文艺汇演问题(动态规划:先把每一场表演的开始时间和结束时间算出来放到一个数组中,然后按照开始时间排序,开始时间相同则按照结束时间升序。维护一个dp数组,dp[i]表示到第i场位置最多能参加多少场,循环两次数组,第一层从1-n,第二层从0-i,如果直播j结束后有足够时间(15分钟)赶到直播i,则可以考虑参加直播i,更新dp[i]为当前最大值)


【走梅花桩】(dfs:用一个visited二维数组判断数组是否使用过,避免重复操作;dfs中对offsets的每一个[x+offsetX,y+offsetY]进行判断,如果再x+offsetX,y+offsetY不越界的情况下,ymatrix[x][y]-matrix[x+offsetX][y+offsetY]<=x&&visited[x+offsetX,y+offsetY]不为true,则count= dfs(x+offsetX,y+offsetY,count+1),直到递归结束。然后对二维数组的每一个值进行dfs操作,找到最大值)


九宫格按键输入(用map保存字母模式下的输入顺序,用栈保存字母模式下输入的相同数字,然后对输入字符串进行逻辑判断:如果是#,当前为字母模式时,需要清空栈并输出一个字母,然后切换模式;当输入的是数字时,如果是字母模式,,如果遇到和栈顶不同的数字或/,就清空栈,然后输出一个字母。否则就需要将这个数字压入栈。再输入元素的结尾放一个空格,增加一个else输出逻辑,确保最后一定能清空栈顶元素并输出字母)


【最大值】(自定义排序,如果看a b组成的数字,如果a+b大,a排在B前面。否则b排在a前面)


计算疫情扩散时间(多源图的层序bfs:先初始化矩阵,将矩阵内1的下标入队。然后bfs,bfs时,先遍历当前队列,对当前队列的每一组坐标,判断每一个偏移量处是否为未感染,如果未感染就感染;并将新的偏移坐标入队。循环过当前的size后,stime++。最后输出time)


【火锅】吃到最多刚好合适的菜(把数组整合成第i秒能吃到这个菜,然后拿第一个菜,后面的菜用pre代表前一个菜拿的时间,如果suit[i]-pre>=m,可以拿,ans++)