07 2021 档案

摘要:题意:给定一张n*m的方格,起点在左上角,只能向下或向右走,地图中有k个地雷,人不能走到地雷上,问可能到达的点有多少。 很明显,这道题的数据很大,我们直接处理整张图肯定不行,而k很小,所以我们得从地雷入手,求哪些点走不到。 而因为我们的人只能向下向右,所以当一个点本身为地雷且(x-1,y+1)也有地 阅读全文
posted @ 2021-07-30 14:56 我是菜狗QAQ 阅读(122) 评论(0) 推荐(0)
摘要:这道题一开始觉得是DP,感觉比较难优化就暂时没想 然后附近有人搜索过了,想了一下搜索感觉可以A*,但是一开始估值函数太保守了,时间卡不过去。 赛后问了一下过的人,是将这条路径之后的最大和平均加到已有的上面来比较 下附代码: 1 #include<bits/stdc++.h> 2 #define ll 阅读全文
posted @ 2021-07-28 10:27 我是菜狗QAQ 阅读(293) 评论(0) 推荐(0)
摘要:当时看了眼题意,没怎么想这道题 题解比较简单,就说了求最大匹配,但是感觉实际上建图还是有点难想的 正解:这道题实际上就是拿最小的代价去满足行与列上的最大值要求,所以实际上下面给出的点里很多都是无所谓的,关键是那些行最大值等于列最大值的点,因为他们可以同时满足两个值,以此减少整体的总和。 因此,这道题 阅读全文
posted @ 2021-07-25 16:03 我是菜狗QAQ 阅读(113) 评论(0) 推荐(0)
摘要:这道题当时很快就发现了要取n+m-1个,以及和行列有关,只能说太久没打了,思维退化,没有关联到2分图后n+m个点取最小生成树 正解:根据上面想到的那两个性质,我们不妨把矩阵的行列分成二分图的两边点,然后将矩阵中的数作为边及边权,这样就构成了一张二分图,然后用最小生成树保证连通性,只要2分图联通,那么 阅读全文
posted @ 2021-07-25 14:00 我是菜狗QAQ 阅读(167) 评论(0) 推荐(0)