摘要: T1 此题是模拟,直接按照题目模拟即可(别被哈希吓到) #include <iostream> using namespace std; int n, m, k, p[101], x, a[1000001];bool f; //f表示当前询问的位置有没有0 int main() { cin >> n 阅读全文
posted @ 2021-07-17 19:15 5k_sync_closer 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 7.17更: 昨天spfa堆优化写错了,重发一下 #include <iostream> #include <queue> #include <utility> #include <functional> #include <cstring> #include <stack> using names 阅读全文
posted @ 2021-07-16 17:22 5k_sync_closer 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 虽然很多人肯定都会了,我还是加深一下印象吧 首先,链式前向星需要一个结构体: struct Edge //存边 { int v, w, nxt; }edge[m]; v,w分别是终点,边权 若这条边的起点为u,则nxt是u的上一条出边的编号 还需要一个数组: int head[n]; head[u] 阅读全文
posted @ 2021-07-16 09:54 5k_sync_closer 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 模板题 大佬们的位运算蒟蒻一直看不懂,于是就一直不敢碰快速幂 但是度娘给了我们学下去的希望 其实快速幂就是这么一个递归函数: 定义$ qp(a,b)=\left\{ \begin{aligned} & 1\ &b=0 \\ & a\ &b=1\\ & qp(a,b/2)^2\ &b\bmod 2=0 阅读全文
posted @ 2021-07-16 08:42 5k_sync_closer 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 思路 观察样例,注意每一行和每一列的关系。 可以看出,第 i 行与第 i 列是完全一致的。 所以,我们只需要调换每一行与同序数的列即可。 换句话说,把行和列的下标换一下。 代码 #include <iostream> using namespace std; int a[101][101], at[ 阅读全文
posted @ 2021-07-15 20:16 5k_sync_closer 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 思路 用二维数组输入,保存 $A,B$。 接着,枚举所有 $c[i][j]$,根据公式求值。 可以看出,公式中变化的下标是从 $0$ 到 $m$ 的。 所以可以从 $0$ 到 $m$ 枚举这个下标。 注意每次枚举的边界。 代码 #include <iostream> #include <cstdio 阅读全文
posted @ 2021-07-15 19:50 5k_sync_closer 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 这题快给我写吐了 单调队列模板题,我想试试用deque写 然后 #include <iostream> #include <deque> using namespace std; deque<int> p;int l, r, n, k, a[1000001]; struct min_q { dequ 阅读全文
posted @ 2021-07-15 10:36 5k_sync_closer 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 思路 观察下图: 红色箭头代表枚举顺序。 我们4次枚举 $x,y$,依次判断 $x,y$ 是否满足图中的四个条件。 注意左下-右上的箭头对于下标是逆序的,枚举时要注意。 代码 #include <iostream> #include <algorithm> using namespace std; 阅读全文
posted @ 2021-07-14 19:31 5k_sync_closer 阅读(20) 评论(0) 推荐(0) 编辑
摘要: 思路 枚举每个位置。 如果能和前面接上(和前一项相等)就累计长度,更新最大值。 否则把长度重置成1,继续枚举。 代码 #include <iostream> #include <algorithm> using namespace std; int n, k, t = 1, s, a[101]; i 阅读全文
posted @ 2021-07-14 18:56 5k_sync_closer 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 思路 定义数组 $cnt,cnt[i]$ 表示 i 的出现次数。 枚举一遍原数组,统计每个数出现的次数。 然后从 0 到 fmax 遍历 cnt,输出从 0 到 fmax 每个数的出现次数。 代码 #include <iostream> #include <algorithm> using name 阅读全文
posted @ 2021-07-14 18:43 5k_sync_closer 阅读(18) 评论(0) 推荐(0) 编辑