12 2021 档案
摘要:传送门:P2719 搞笑世界杯 这道题赤裸裸的动态规划,我们设 dpij{dp_i}_jdpij 表示 i 张 A 类和 j 张 B 类的可能性。可以用 dpnn{dp_n}_ndpnn 表示答案。初始值:dpi0=dp0i=1(i=2,3,4,5,……,n){dp_i}_0 = {dp_0
阅读全文
摘要:题目传送门:CF295B 这道题是练习 floydfloydfloyd 的好题。 首先我们来思考一下,删除 nnn 次点,每次删点求一次最短路,用 floydfloydfloyd 做则是 O(n3×n)\text O(n^3 \times n)O(n3×n) 也就是 O(n4)\text O(n^4
阅读全文
摘要:传送门:CF1066C Books Queries 这个题目是蓝的? 首先这个题目暴力模拟肯定不行,我们考虑一个数组 aia_iai 代表值为 iii 的元素的位置在哪里,然后有两个指针 lll,rrr 表示当前左端点和右端点的值。 考虑每一个操作: L idL\,\, idLid:在现在序列的左
阅读全文
摘要:众所周知,SPFA 他死了。 但是这道题目真的不能用 SPFA 吗? 确实! 首先我们来说一下 SPFA,正常我们用 queue 进行 SPFA,这是我们照常的习惯。但是其实不光光用 queue 可以实现,用其他 STL 容器也可以。试过 vector,比 queue 好,但是还是 T 了不少。但是
阅读全文
摘要:题目传送门:AT5220 这个题目用 BFS 解决即可,对于每一个点 (i, j),判断是否是空格,是的话就 BFS 搜索即可,总的复杂度是 O(H2W2)O(H^2W^2)O(H2W2),完全够用。 代码: #include <iostream> #include <queue> #include
阅读全文
摘要:这道题是蓝题好像多余了。 一看到最短时间,我们第一反应就是 BFS,但是这道题仅仅 BFS 不够,要加一些剪枝优化,例如对下面这个例子: 4 4 10 ..#. ...# ..## .### 1 1 3 2 第一,我们从坐标 (1,1) 出发,这时我们可以向右 1~10 步,但是我们发现当我们走 2
阅读全文