比赛专用模板
wuhulala
这个作者很懒,什么都没留下…
展开
-
向下向上去整函数
#include #include int main () { printf ("floor of 2.3 is %d\n", (int )floor (2.3) ); printf ("floor of 2.6 is %d\n", (int)floor (2.6) ); printf ("floor of -2.3 is %d\n", (int)floor (原创 2014-12-02 00:05:34 · 1370 阅读 · 0 评论 -
字典树 一种快速插入查询数据结构
定义字典树,又称单词查找树,Trie树,是一种树形结构,典型应用是用于统计,排序和保存大量的字符串,所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来节约存储空间,最大限度的减少无谓的字符串比较,查询效率比哈希表高。解释 这个图片比较经典 就是在每一次边存的是字符,点标记着个点是否之前的边的字符都存在 如图存在的字符串有 abc abcd abd。。。。代码#inclu原创 2015-07-29 19:27:59 · 1454 阅读 · 0 评论 -
关于树的重心的自我理解
定义树的重心:删去重心后,生成的多棵树尽可能平衡。即以这个点为根,那么所有的子树(不算整个树自身)的大小都不超过整个树大小的一半。性质性质 1 :树中所有点到某个点的距离和中,到重心的距离和是最小的,如果有两个距离和,他们的距离和一样。性质 2 :把两棵树通过某一点相连得到一颗新的树,新的树的重心必然在连接原来两棵树重心的路径上。性质 3 :一棵树添加或者删原创 2015-05-22 12:33:09 · 4074 阅读 · 0 评论 -
vim 配置
set go= cin nu ts=4 sw=4 sts=4 noswapfile nobackup acd et cursorlineset backspace=eol,start,indentsyntax onmap <F4> :!g++ -o2 -std=c++11 % -o %<<cr>map <F5> :!%<<cr>map <F3> :!javac %<cr>map <F2> :原创 2015-07-26 10:33:46 · 595 阅读 · 0 评论 -
poj 1001 java大精度
import java.io.* ; import java.math.* ; import java.util.* ; import java.text.* ; public class Main { public static void main(String[] args) { Scanner cin=new Scanner (原创 2015-07-27 19:08:31 · 848 阅读 · 0 评论 -
求包括n个矩形的最小矩形面积模板
typedef double typev;const double eps = 1e-8;const int N = 50005;int sign(double d){ return d < -eps ? -1 : (d > eps);}struct point{ typev x, y; point operator-(point d){ point原创 2015-07-26 15:41:16 · 1695 阅读 · 0 评论 -
偶遇spfa()判断负环
bool in_queue[max_nodes];int cnt[max_nodes];bool SPFA(int s){ int u; queueint> Q; memset(in_queue, 0, sizeof(in_queue)); memset(cnt, 0, sizeof(cnt)); for (int i=0; inum_nodes; +原创 2015-05-29 11:09:01 · 811 阅读 · 0 评论 -
c++技巧- 用vector和unique删去重复元素
[cpp] view plaincopyprint?#include #include #include using namespace std; int main() { int n; int x,y; while(scanf("%d",&n)!=EOF) {转载 2015-03-10 18:19:55 · 2985 阅读 · 0 评论 -
字符串Hash的原理与应用
字符串Hash无论是在ACM竞赛中还是在工程中都有着广泛的应用,所以很有必要掌握好它的用法。主要分为两个部分:Hash映射和冲突处理。而本文主要来详细讲解Hash映射的方法及应用,下篇文章将会介绍如何处理冲突。 对于字符串Hash来说都是把字符串映射为一个整数,这一步是通过Hash函数来进行的。常用的Hash函数具体有:SDBMHash,RSHash,JSHash,转载 2015-01-04 22:34:17 · 787 阅读 · 0 评论 -
poj 1141 括号匹配
根据“黑书”的思路,定义:d[i][j]为输入序列从下标i到下标j最少需要加多少括号才能成为合法序列。0<=i<=j<len (len为输入序列的长度)。c[i][j]为输入序列从下标i到下标j的断开位置,如果没有断开则为-1。当i==j时,d[i][j]为1当s[i]=='(' && s[j]==')' 或者 s[i]=='[' && s[j]==']'时,d[i][j]=d原创 2014-12-28 21:32:00 · 939 阅读 · 0 评论 -
邻接表
今天才发现临界表用错了,原来一直是无向图,所以随意怎么用,今天的有向 图才发现错了,纪念一下void addedge(int a,int b,int c){ edge[inde].s=b; edge[inde].cost=c; edge[inde].e=head[a]; head[a]=inde++;}//这个是加权建立的遍历 for(int i=head原创 2014-12-04 16:21:17 · 1373 阅读 · 0 评论 -
poj 1127 Jack Straws (人生第一道计算几何)
虽然只是对着书敲了一边,但是1A了,#include #include #include #include #include using namespace std;double EPS =1e-10;#define N 14int n;double add(double a,double b){ if(abs(a+b)<EPS*(abs(a)+abs(b))) retu原创 2014-12-18 22:06:16 · 863 阅读 · 0 评论 -
hdu 3861强连通分量+最小图匹配
这个题卡了好久,发现还有什么二分图匹配这个东西。。然后简单搞了一下二分图:二分图又称二部图,是图论中的一种特殊模型。设G=(V,E)是一个无向图,如果顶点V可以分割为两个互不相交的子集(A,B),并且图中的每条边(i,j)所关联的两个顶点i和j分别属于这两个不同的顶点集(i in A, j in B), 则称图G是二分图。e.g.匹配:给定一个二分图,在G的一个子图G’中,如果G’原创 2014-12-03 22:35:16 · 1031 阅读 · 0 评论