上一页 1 ··· 33 34 35 36 37 38 39 40 41 ··· 50 下一页
摘要: 传送门:CF1066C Books Queries 这个题目是蓝的? 首先这个题目暴力模拟肯定不行,我们考虑一个数组 aia_iai​ 代表值为 iii 的元素的位置在哪里,然后有两个指针 lll,rrr 表示当前左端点和右端点的值。 考虑每一个操作: L idL\,\, idLid:在现在序列的左 阅读全文
posted @ 2021-12-23 18:10 HappyBobb 阅读(9) 评论(0) 推荐(0)
摘要: 众所周知,SPFA 他死了。 但是这道题目真的不能用 SPFA 吗? 确实! 首先我们来说一下 SPFA,正常我们用 queue 进行 SPFA,这是我们照常的习惯。但是其实不光光用 queue 可以实现,用其他 STL 容器也可以。试过 vector,比 queue 好,但是还是 T 了不少。但是 阅读全文
posted @ 2021-12-19 17:03 HappyBobb 阅读(6) 评论(0) 推荐(0)
摘要: 题目传送门:AT5220 这个题目用 BFS 解决即可,对于每一个点 (i, j),判断是否是空格,是的话就 BFS 搜索即可,总的复杂度是 O(H2W2)O(H^2W^2)O(H2W2),完全够用。 代码: #include <iostream> #include <queue> #include 阅读全文
posted @ 2021-12-18 15:05 HappyBobb 阅读(12) 评论(0) 推荐(0)
摘要: 这道题是蓝题好像多余了。 一看到最短时间,我们第一反应就是 BFS,但是这道题仅仅 BFS 不够,要加一些剪枝优化,例如对下面这个例子: 4 4 10 ..#. ...# ..## .### 1 1 3 2 第一,我们从坐标 (1,1) 出发,这时我们可以向右 1~10 步,但是我们发现当我们走 2 阅读全文
posted @ 2021-12-18 14:35 HappyBobb 阅读(35) 评论(0) 推荐(0)
摘要: 这是一道贪心题,不需要二分等复杂方法,主要就是要想到贪心方法。 代码: #include <iostream> using namespace std; int main() { int n, t; long long a = 0, b = 0; cin >> n; for(int i = 1; i 阅读全文
posted @ 2021-10-05 16:33 HappyBobb 阅读(6) 评论(0) 推荐(0)
摘要: 分类讨论: 如果已经有序,答案为0。 如果第一个数为 1\text{1}1 或者第 n\text{n}n 个数为 n\text{n}n,答案为 111,选择其他数排序即可。 最后一个数为 1\text{1}1,并且第一个数为 n\text{n}n,需要三次。 其他都是 2\text{2}2 次。 代 阅读全文
posted @ 2021-09-11 10:46 HappyBobb 阅读(8) 评论(0) 推荐(0)
摘要: 水题,找一下规律可以发现,两堆石子差小于等于 1 时就是 Brown 胜利,不然就是 Alice。 #include <iostream> #include <cmath> using namespace std; int main() { long long n, m; cin >> n >> m 阅读全文
posted @ 2021-09-05 13:23 HappyBobb 阅读(4) 评论(0) 推荐(0)
摘要: 本题可以很明显看出应该是二分题目,如果需要二分答案,需要满足: 答案具有单调性,也就是说确定一个中央,中央左边不符合答案,右边符合,或者反过来。 假设二分答案验证阶段的复杂度是 O(m),总共的答案有 n 种选择,则二分答案的复杂度为 O(logn m)\large \text{O}(log_n \ 阅读全文
posted @ 2021-09-05 13:17 HappyBobb 阅读(11) 评论(0) 推荐(0)
摘要: 本题我们可以用 count 函数,count 函数位于头文件 algorithm 中,支持三个参数,第一个和第二个是要遍历的数组或容器的首位迭代器,第三个是要判断的值。count 函数返回的是在 first, last 区间中等于第三个参数 value 的数的个数,本题正好适用。 特别提醒,STL 阅读全文
posted @ 2021-07-11 19:48 HappyBobb 阅读(12) 评论(0) 推荐(0)
摘要: 本题可以写 cmp 函数,但是这里教大家写运算符重载。 运算符重载可以使两个结构体 a,ba, ba,b 做到像 int 一样可以判断 a < b,而不用 cmp。通常重载运算符是在结构体内定义(也可以用友元类,两个不同结构体的关系),定义形式如: struct Node // class也可以 { 阅读全文
posted @ 2021-07-10 12:40 HappyBobb 阅读(17) 评论(0) 推荐(0)
上一页 1 ··· 33 34 35 36 37 38 39 40 41 ··· 50 下一页