随笔分类 - AAA模版
摘要:时间复杂度:O(logN) 用法:在一个左闭右开(a,b] 的有序区间里进行二分查找,需要查找的值由第三个参数给出。 条件:使用这两个函数注意要有序 对于upper_bound来说,返回的是被查序列中第一个大于查找值的指针,也就是返回指向 被查值 > 查找值 的最小指针,lower_bound则是返
阅读全文
摘要:什么是前缀和、前缀积? 前缀和、前缀积也称前缀和数组,前缀积数组。 给一数组A, 前缀和:新建一数组B,数组中每一项B[i]保存A中[0…i]的和; 后缀和:新建一数组B,数组中每一项B[i]保存A中[i…n-1]的和; 前缀积:新建一数组B,数组中每一项B[i]保存A中[0…i]的积; 后缀积:新
阅读全文
摘要:还是畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 53939 Accepted Submission(s): 24482 Proble
阅读全文
摘要:谓词(predicate):是做某些检测的函数,返回用于条件判断的类型,指出条件是否成立。 总结: count和count_if函数是计数函数,先来看一下count函数:count函数的功能是:统计容器中等于value元素的个数。先看一下函数的参数:count(first,last,value);
阅读全文
摘要:字符串输入 对字符串的输入分三种情况: 1.每个字符串中不含空格、制表符及回车这种情况,用scanf("%s",str)是再好不过的了,比如,测试数据中只有两个字符串:abc def。要读入abc与def,可以这样写: 2、字符串中含有空格、制表符,但不含回车对于这种情况,scanf("%s",st
阅读全文
摘要:上述代码获得字符串s中 从第0位开始的长度为5的字符串.默认时的长度为从开始位置到尾 输出结果为: 12345 输出结果为: 12345
阅读全文
摘要:#include #include #include using namespace std; int fat[5001]; int tot; struct node{ int x,y,z;//结构体保存起点x,终点y,以及边权z }f[200001]; int find(int x)//路径压缩 { if(fat[x] != x) fat[x] = f...
阅读全文
摘要:题目描述 如题,给出一个无向图,求出最小生成树,如果该图不连通,则输出orz 输入输出格式 输入格式: 第一行包含两个整数N、M,表示该图共有N个结点和M条无向边。(N<=5000,M<=200000) 接下来M行每行包含三个整数Xi、Yi、Zi,表示有一条长度为Zi的无向边连接结点Xi、Yi 输出
阅读全文
摘要:二分 •主要用于在一个单调的函数中查询某值 连续函数的情况: • 若当前查找的区间是 [l, r] ,查询的值是 y ,函数单增 • 设 mid = (l + r) / 2 若 f(mid) < y 则 l = mid, 否则 r = mid • 直至 r - l < eps 离散函数的情况: •
阅读全文
摘要:#include using namespace std; #define PI acos(-1.0) int main() { printf("%f\n",asin(0.5));//求反正弦 printf("%f\n",sin(30*PI/180.0));//求正弦 printf("%f\n",exp(1));//求e^x printf("%f\n",l...
阅读全文
摘要:注意是回文子串 1.暴力法 2.中心拓展法 3.动态规划法 4.manacher法
阅读全文
摘要:#include using namespace std; const int maxn = 3000 + 10; int n,a[maxn],b[maxn],dp[maxn]; int main() { scanf("%d",&n); memset(dp,0,sizeof(dp)); for(int i = 1;i b[j]) maxn = max(maxn,...
阅读全文
摘要:#include #define ll long long using namespace std; const int maxn=1010; int c[maxn],w[maxn]; int dp[maxn]; int main(){ int n,v; cin>>n>>v; for(int i=1;i>c[i]; for(int i=1;i>w[i]; ...
阅读全文
摘要:图遍历问题分为四类 遍历完所有的边而不能有重复,即所謂“一笔画问题”或“欧拉路径”; 遍历完所有的顶点而没有重复,即所谓“哈密尔顿问题”。 遍历完所有的边而可以有重复,即所谓“中国邮递员问题”; 遍历完所有的顶点而可以重复,即所谓“旅行推销员问题”。 对于第一和第三类问题已经得到了完满的解决,而第二
阅读全文
摘要:图的m色判定问题:给定无向连通图G和m种颜色。用这些颜色为图G的各顶点着色,问是否存在着色方法,使得G中任意两邻接点有不同颜色。 图的m色优化问题:给定无向连通图G,为图G的各顶点着色,使图中任2邻接点着不同颜色,问最少需要几种颜色的最少颜色的数目m,称为该图的色数。 若图G是平面图,则他的色数不超
阅读全文
摘要:import java.math.BigDecimal; import java.math.BigInteger; import java.util.*; public class Main { public static void main(String[] args) { Scanner cin = new Scanner(System.in...
阅读全文
摘要:预备谈谈下面这些,可能有补充 KMP算法的用途; KMP算法之前的暴力; KMP算法预备知识与概念; KMP算法模板: KMP算法的习题。 1.KMP算法的用途: 主要用于模式匹配(字符串匹配)。给定一个长的字符串(target string)和一个短的字符串(pattern string),要求判
阅读全文
摘要:欧拉函数,用φ(n)表示 欧拉函数是求小于等于n的数中与n互质的数的数目 辣么,怎么求哩?~(~o ̄▽ ̄)~o 可以先在1到n-1中找到与n不互质的数,然后把他们减掉 比如φ(12) 把12质因数分解,12=2*2*3,其实就是得到了2和3两个质因数 然后把2的倍数和3的倍数都删掉 2的倍数:2,4
阅读全文
摘要:大家常常遇到过这类题目:统计某个连续出现的元素的个数. 对某种连续出现的元素实施操作,使用计数器cnt计算可以合法操作的界限。若计数器记到了不合法的时候,选择将计数器置零。 比如CCCCL1-044:稳赢 当计数器<=k时输出当前手势的克星,若违法了(>k)则将cnt置零并且马上输出当前手势。 又如
阅读全文
摘要:(a + b)2 = a2 + 2ab + b2 (a + b)3 = a3 + 3a2b + 3ab2 + b3 (a + b)4 = a4 + 4a3b + 6a2b2 + 6ab3 + b4 (a + b)5 = a5 + 5a4b + 10a3b2 + 10a2b3 + 5ab4 + b5
阅读全文

浙公网安备 33010602011771号