摘要:
https://www.acwing.com/problem/content/531/ #include <iostream> #include <cstring> #include <algorithm> using namespace std; const int N = 12, M = 1 < 阅读全文
摘要:
debug:重载乘号的时候要把两个传进来的矩阵用起来 // Problem: P3390 【模板】矩阵快速幂 // Contest: Luogu // URL: https://www.luogu.com.cn/problem/P3390 // Memory Limit: 256 MB // Tim 阅读全文
摘要:
int n, m; int k; struct matrix{ int c[101][101]; matrix(){memset(c,0,sizeof c);} }; matrix operator*(matrix &a,matrix &b){ matrix t; for(int i=1;i<=n; 阅读全文
摘要:
https://www.acwing.com/problem/content/description/2071/ 每次合并的时候需要开一个新点去实现信息的无后效性,也就是合并之前的两个连通块信息是无法共享的,发现这样开点连边最后 形成一棵树,每次我们将信息传递到新点,也是两个合并点的lca,这使得最 阅读全文
摘要:
1.单点加 2.前缀和查询 int n, m; int a[N]; int tr[N]; int lowbit(int x){ return x&(-x); } void add(int pos,int k){ for(int i=pos;i<=n;i+=lowbit(i))tr[i]+=k; } 阅读全文
摘要:
https://zhuanlan.zhihu.com/p/340514421 https://blog.csdn.net/Emm_Titan/article/details/124035796 https://www.cnblogs.com/TianMeng-hyl/p/14972355.html 阅读全文
摘要:
双指针的题目往往是看起来需要O(n),我们一般枚举一个指针,然后我们发现另一个指针不走回头路,不论是哪个方向,这样我们的时间复杂度就是O(n). 从例题来看: 给定一个字符串,我们希望找到最短长度区间能包含所有字母类型。 核心:对于左端点固定的时候,我们找到最小的r,然后我们考虑i右移动一位,这时候 阅读全文
摘要:
链接:https://ac.nowcoder.com/acm/contest/69510/G 来源:牛客网 你在一个星球上,外星人amiloac想让你管理一条河流,该河流有 段,每两段之间有一个挡板隔开,每一段都有各自的颜色 。你需要管理 天,每一天你需要做以下的一种操作。 阅读全文
摘要:
赛时由于思考问题不清晰,感觉仔细思考一会就不行了,侥幸过了最短路的构造题,写的时候也是不顺利,构造也确实没怎么练过。 E题就是个给你从1出发的最短路的结果,要求你给出图的构造,这种反向题目还真没仔细思考过。 此外特殊的是本题是无向图且所有边权为1,边权为1应该联想bfs,然后想到bfs根据到出发点的 阅读全文
摘要:
最大的 int 型整数在二进制形式下表示为 0111 1111 1111 1111 1111 1111 1111 1111。这是一个 32 位的二进制数,其中最高位为符号位(0 表示正数),其余的位全部为 1。 这个二进制数对应的十进制值为 (2^{31} - 1),即 2,147,483,647。 阅读全文