函数模板
摘要:
template <typename AnyType> void Swap(AnyType &a,AnyType &b)// AnyType *a是数组 { AnyType temp; temp=a; a=b; b=temp; } template<> void Swap<typename>(str
强制类型转换
摘要:
1 static_cast<typename>(value); 更加严格的强制类型转换 2 关于类的强制类型转换 本质上是隐式调用了构造函数 且只有//接受一个参数(可以提供默认值)//的构造函数才能作为转换函数 Stonewt(double lbs) stonewt mycat mycat=19.
最小生成树 kruscal 堆优化 板子
摘要:
每次都取出权值最小的边 并且保证他不会出现环(用并查集维护) 最小边用堆维护 #include<bits/stdc++.h> #include<iostream> using namespace std; typedef long long ll; typedef pair<ll,ll> P; co
判断平行四边形
摘要:
首先 根据x与y的大小对点排序 最左点与最右点 互成对角 然后 向量法比较是否相等 最后 判断是否退化(一条直线) 即1 2 点与2 3 点斜率是否相等 用乘法验证保证精度
最短路/判负环/ 板子
摘要:
SPFA/BELLMAN-FORD算法 复杂度最大(VE) #include<bits/stdc++.h> const long long inf=2147483647; const int maxn=10005; const int maxm=500005; using namespace std
P1439 最长公共子序列 n值为10000
摘要:
题目描述 给出1 2 ... N 的两个排列 ,求它们的最长公共子序列。 输入格式 第一行是一个数 n。 接下来两行,每行为 n 个数,为自然数 1,2,n 的一个排列。 输出格式 一个数,即最长公共子序列的长度。 输入输出样例 输入 #1复制 5 3 2 1 4 5 1 2 3 4 5 输出 #1
STL
摘要:
1.next_permutation(shuzu,shuzu+n) 当排列结束后会返回false 2。 lower_bound( )和upper_bound( )都是利用二分查找的方法在一个排好序的数组中进行查找的。 在从小到大的排序数组中, lower_bound( begin,end,num):
QT学习笔记(自用
摘要:
QString有两个函数 trimmed() 与simplified() 第一个函数的作用是消掉字符串前后两端的空白字符,第二个函数的作用是前一个函数作用的基础上再把字符串中的所有空白符换成单一空格; str.simplified()
语法向字符串
摘要:
cin.getline(str a,int length) 可以读取一个小于等于的字符串【剩下的字符存储在缓冲区】 【这种方式也可以判断是否输入空字符串】 while(!(cin>>int)) {cin.clear()//清除错误 while(cin.get()!='\n') continue//清
欧拉筛【转载自用
摘要:
前言 https://www.luogu.com.cn/blog/HSH/post-shuo-lun-ou-la-shai-fa 正题 欧拉筛法是一种可以筛出质数,欧拉函数,约数个数和约数和的筛法 那么我们就对这些问题逐一进行讲解 在这之前,我们先说几个东西: 1、每一个大于等于2的正整数nn,都有