ขนาดวิดีโอ: 1280 X 720853 X 480640 X 360
แสดงแผงควบคุมโปรแกรมเล่น
เล่นอัตโนมัติ
เล่นใหม่
这个方法确实太舒服了。每一行只需要算一次,如果遇到w,先算前半部分,w后半部分等到了w那一列才需要继续算。每一列的操作也是同理,之所以可以用一个常数算行,一个数组算列,是因为遍历的顺序。如果先遍历列,再遍历行,也可以用一个常数统计列,一个数组统计行。与用4个矩阵来算上下左右那个方法不一样的是,这个方法只需要遍历棋盘2次,而不是5次。如果有人和我一样,一开始对于视频主说的方法不太理解的话,可以先从brute force入手。然后理解为什么会有重复计算,进而选用用4个矩阵记录上下左右的累计敌人数。最后再来理解视频主的方法,可以先快进看代码,自己手动过一遍,理解了再听一遍,效果更佳。
这个 complexity 应该是o(mn*(m+n)), 讲的太好了
brute force是你这个time complexity。题目里面就不是了。
可是这题网上的做法是O(MN)?就算用prefix sum做四遍也是O(MN)
🤔姐姐是每周4题?不是每日一题?🤔🤔🤔
...我正在录视频🤔以后打算一周四个视频🤔
happygirlzt 😔我也想以后刷题做视频啊 😷有什么建议吗?姐姐的视频都是一次性录制成功吗?🙃
@@includeno 基本上都是吧😂建议就是。。开始了就别停止啊。ヾ(◍°∇°◍)ノ゙加油~
happygirlzt 😇那了解了 9月以后我要957了 我去好好规划一下时间 视频上线前发你看看🥺
@@includeno 建议露脸!!!露脸看的人多!!😏
看完了还是没办法理解怎么去除重复计算的
对于一个'0',你要计算它左边,右边,上边,下边的敌人数。然后我们用rows计算从左到右的敌人数,cols j计算从上到下的敌人数。所以每次遇到一个‘0’的时候,我们只是计算了右边和下边的敌人了。避免了左边和上边的重复计算。。
我的理解是只能去除上和左的,下和右的每次还是都要算
🦄抢座位了
思路很清楚易懂,优秀
这个方法确实太舒服了。每一行只需要算一次,如果遇到w,先算前半部分,w后半部分等到了w那一列才需要继续算。每一列的操作也是同理,之所以可以用一个常数算行,一个数组算列,是因为遍历的顺序。如果先遍历列,再遍历行,也可以用一个常数统计列,一个数组统计行。与用4个矩阵来算上下左右那个方法不一样的是,这个方法只需要遍历棋盘2次,而不是5次。
如果有人和我一样,一开始对于视频主说的方法不太理解的话,可以先从brute force入手。
然后理解为什么会有重复计算,进而选用用4个矩阵记录上下左右的累计敌人数。
最后再来理解视频主的方法,可以先快进看代码,自己手动过一遍,理解了再听一遍,效果更佳。
这个 complexity 应该是o(mn*(m+n)), 讲的太好了
brute force是你这个time complexity。题目里面就不是了。
可是这题网上的做法是O(MN)?就算用prefix sum做四遍也是O(MN)
🤔姐姐是每周4题?不是每日一题?🤔🤔🤔
...我正在录视频🤔以后打算一周四个视频🤔
happygirlzt 😔我也想以后刷题做视频啊 😷有什么建议吗?姐姐的视频都是一次性录制成功吗?🙃
@@includeno 基本上都是吧😂建议就是。。开始了就别停止啊。ヾ(◍°∇°◍)ノ゙加油~
happygirlzt 😇那了解了 9月以后我要957了 我去好好规划一下时间 视频上线前发你看看🥺
@@includeno 建议露脸!!!露脸看的人多!!😏
看完了还是没办法理解怎么去除重复计算的
对于一个'0',你要计算它左边,右边,上边,下边的敌人数。然后我们用rows计算从左到右的敌人数,cols j计算从上到下的敌人数。所以每次遇到一个‘0’的时候,我们只是计算了右边和下边的敌人了。避免了左边和上边的重复计算。。
我的理解是只能去除上和左的,下和右的每次还是都要算
🦄抢座位了
思路很清楚易懂,优秀