自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

晴朗的博客

当你得意的时候,不要忘记你有一半命运掌握在上帝手中;当你失意的时候,不要忘记你有一半命运掌握在自己手中!

  • 博客(31)
  • 资源 (2)
  • 收藏
  • 关注

转载 树的直径,树的重心,树的分冶

要是利用了反证法:假设 s-t这条路径为树的直径,或者称为树上的最长路现有结论,从任意一点u出发搜到的最远的点一定是s、t中的一点,然后在从这个最远点开始搜,就可以搜到另一个最长路的端点,即用两遍广搜就可以找出树的最长路证明:1    设u为s-t路径上的一点,结论显然成立,否则设搜到的最远点为T则dis(u,T) >dis(u,s)     且  dis(u,T)>dis(u

2014-09-30 16:56:41 464

原创 hdu 3804树链剖分+离线操作

/*树链刨分+离线操作题意:给你一棵树,和询问x,y 从节点x--节点1的小于等于y的最大值. 解:先建一个空树,将树的边权值从小到大排序,将询问y按从小到大排序 对于每次询问y将小于等于y的边权值的边加入,在进行询问将结果储存最后输出即可 易错点:要考虑到节点1到节点1的情况需特判。*/#pragma comment(linker, "/STACK:102400000,1

2014-09-30 15:49:48 990

原创 poj 3237 树链剖分模板(用到线段树lazy操作)

/*本体在spoj375的基础上加了一些操作,用到线段树的lazy操作模板类型*/#include#include#include#include#include#include#includeusing namespace std;#define N 11000#define inf 0x3fffffffint head[N];int son[N];//记录与当前点

2014-09-29 16:25:05 511

原创 spoj 375 树链剖分模板

/*只是一道树链刨分的入门题,作为模板用。*/#include#include#include#include#include#include#includeusing namespace std;#define N 11000#define inf 0x3fffffffint head[N];int son[N];//记录与当前点相连的数目最多的子节点的下标int

2014-09-29 15:52:14 521

原创 hdu 2224 双调欧几里得旅行商问题tsp

/*题意:平面上n个点,确定一条连接各点的最短闭合旅程。这个解的一般形式为NP的(在多项式时间内可以求出)建议通过只考虑双调旅程(bitonictour)来简化问题,这种旅程即为从最左点开始,严格地从左到右直至最右点,然后严格地从右到左直至出发点。每个点都要走一次,且每个点只能走一次,求最短路径;相当于一个人从一个点出发分两条不同的路线走,不过一个走在前面一个在后面走。设dp[i][j]代

2014-09-27 21:08:28 779

原创 hdu 5050 java程序求大数最大公约数

import java.io.*;import java.math.*;import java.util.*;import java.text.*;public class Main{ public static void main(String[] args) { int e=0,i,j; BigInteger f,ff,p,h,

2014-09-27 19:54:13 600

原创 sdibt 1251 进化树问题

/*三个点的话 A--D--B | C dis(AD)=(AB+AC-BC)/2;拓展到到n个点 每次去叶子节点,先去掉与A相连长度最小的。 将他们的长度加起来。*/#include#define N 110int ma[N][N];int main() { int n,m

2014-09-26 11:11:46 561

原创 hdu 2014 位运算

/*注意两点1.从后往前找互补的,刚开始我找的是相邻的但是这个例子就不行101 1102.因为时累加所以sum可能会超出int范围,这个很重要。*/#include#define N 110000#includeint a[N];int b[N];int vis[N];int power(int u) { int k=0; while(u) { u/=2;

2014-09-25 14:00:33 596

原创 poj 3254 状态压缩dp

/*限制条件 1.同行不能相邻 2.上下不能相邻 3.不能在零的地方放东西解: 求出各行合法的状态,为第一行的和法状态赋值为1 从上到下合并状态dp[i][j]=(dp[i][j]+dp[i-1][k])%mod(其中j。k 为i和i-1行合法的状态) 也就是说把上一行的状态数目存储到dp[i][0]中了。*/#include#include#define mod 1

2014-09-24 13:46:33 442

原创 hdu 5040bfs+优先队列 需要存状态

/*剪枝:四秒后状态会变得和原来一样,所以四秒后如果再经过这个点肯定不是最优的舍去易错点:在一个是从.到.这两个点都没有被照到并且不是摄像机,也可能需要等3秒,因为后面的结果可能再这三秒中发生改变,要单独判断*/#include#include#include#include#includeusing namespace std;#define N 510char s[N][

2014-09-24 10:22:10 951

转载 zoj 3812 状压dp

转载:http://blog.csdn.net/qian99/article/details/39138329

2014-09-23 16:55:25 443

转载 C++标准库:bitset 用法整理&&zoj 3812

转载: std::bitset是STL的一部分,准确地说,std::bitset是一个模板类,它的模板参数不是类型,而整形的数值(这一特性是ISO C++2003的新特性),有了它我们可以像使用数组一样使用位。下面看一个例子:#includestd::bitset bs;//它是一个模板,传递的参数告诉编译器bs有8个位。我们接着看上面的代码,通过上面两

2014-09-23 16:02:59 571

原创 hdu 2604 矩阵快速幂模板题

/*矩阵快速幂: 第n个人如果是m,有f(n-1)种合法结果 第n个人如果是f,对于第n-1和n-2个人有四种ff,fm,mf,mm其中合法的只有fm和mm 对于ffm第n-3个人只能是m那么有f(n-4)种 对于fmm那么对于第n-3个人没有限制有f(n-3)种 顾f(n)=f(n-1)+f(n-3)+f(n-4)

2014-09-23 15:12:43 735

原创 poj 2420 模拟退火法基础

/*题意:给n个电脑,求一个点到这n个电脑的距离和最小。模拟退火法:和poj1379的方法类似因为坐标范围是0-10000不妨把它看成是10000*10000的正方形来做*/#include#include#include#include#define inf 10000000000000using namespace std;#define N 110#define

2014-09-23 10:44:50 587

原创 poj 1379 模拟退火法

/*模拟退火法: 找到一些随机点,从这些点出发,随机的方向坐标向外搜索; 最后找到这些随机点的最大值; 坑://if(xx>-eps&&xx-eps&&yy<eps+y) {不知道为什么这个判断方式错误??????*/#include#include#include#include#define pi acos(-1.0)#define N 1100#define

2014-09-22 17:41:32 561

原创 hdu 5023 线段树延迟更新+状态压缩

/*线段树延迟更新+状态压缩*/#include#define N 1100000struct node { int x,y,yanchi,sum;}a[N*4];int lower[31];void build(int t,int x,int y) {a[t].x=x;a[t].y=y;a[t].yanchi=0;if(x==y){ a[t].sum=low

2014-09-22 15:27:02 677

原创 hdu 5037 模拟网选1006

/*模拟实例:331 10 552 10 3361 3 2 11 4 2 11 5 211 6 211 7 2 15 20 81 2 3 4 51 20 850 20 82423345445*/#include#include#define N 2100000int a[N];int num;in

2014-09-22 12:20:27 457

转载 hdu 5035 概率论

HDU 5035 Delivery 题解题解 数学 概率 期望题目大意:Matt一个发快递,快递点有N个职员,职员处理一个客户的时间服从指数分布:f(t)=λe−λt,其中的参数λ为职员的效率,现在给出每个职员的效率,同时给了一个场景:现在每个职员都有且只有客户在服务中,此人还从信息牌得知了每个职员已经为当前客户服务了c时间,题目中也给出了,一旦有客户被服务完毕

2014-09-22 11:31:01 733

转载 hdu 5015 矩阵快速幂(可用作模板)

转载:http://blog.csdn.net/wdcjdtc/article/details/39318847

2014-09-19 19:36:29 503

原创 hdu 2167 状态压缩dp

/*状态转移方程:dp[i][j]=Max(dp[i][j],dp[i-1][k]+sum[i][j]);*/#include#include#define N 16int ma[N][N];int num[N];char s[150];int lower[15];//储存二级制int dp[N][1<<N];//储存最优状态int now[1<<N],cu;//储存合法

2014-09-19 16:58:02 426

原创 zoj 1649 bfs

/*步数最小的不一定是时间最少的常规的bfs只能求出步数最少的。而在这题中一个点可以多次走,所以必须记录最优的那个值*/#include#include#includeusing namespace std;#define inf 0x3fffffff#define N 300char s[N][N];struct node {int x,y,step,time;}s

2014-09-19 11:27:54 500

原创 zoj 1008 暴力枚举求解dfs+优化

/*现将相同的合并计数。再枚举判断是否符合当cou==n*n是符合就退出*/#include#include#define N 900int en[N][4],num[N],real[N][4],len,n,ok;void pp(int a[4],int b[4])//赋值{ a[0]=b[0]; a[1]=b[1]; a[2]=b[2]; a

2014-09-18 13:43:51 576

转载 hdu 5017 模拟退火算法

hdu 5017 http://#include #include #include #include using namespace std;const int D[8][2] = {{0, 1}, {0, -1}, {1, 0}, {-1, 0}, {1, 1}, {-1, -1}, {1, -1}, {-1, 1}};double a, b, c, d, e, f;

2014-09-17 20:42:50 549

转载 模拟退火算fa

http://www.cnblogs.com/heaad/archive/2010/12/20/1911614.html

2014-09-17 20:27:18 480

原创 poj 2404 中国邮递员问题 欧拉回路判定+状压dp

/*状压dp邮递员问题:求经过任意点出发经过每一条边一次并回到原点。解法:1、如果是欧拉回路那么就是所有的边的总和。 2、一般的解法,找出所有的奇度顶点,任意两个顶点匹配,即最小完美匹配,可用状压dp。*/#include#include#define N 20#define inf 1000000000int ma[N][N];int lower[N];int

2014-09-17 19:26:07 1137

原创 poj 3923 模拟

/*1、判断是否是一个完整边框2、判断是否长度和宽度小于33、判断是否有内部覆盖的现象*/#include#define N 110#define inf 0x3fffffffstruct node { int u,v;}f[N*N],ee;char s[N][N];int n,m;void judge() { int minx,i,j,k,e,len,maxx,

2014-09-17 15:37:23 591

原创 poj 3925 枚举+prime

/*因为15很小可以暴力枚举然后用最小生成树的prim来计算*/#include#include#include#define N 40#define inf 0x3fffffffint a[N],f[N],en[N];int ma[N][N],n,m;double dd;void prime(){ int i,j,vv[N],dis[N],sum,total;

2014-09-17 14:53:53 885

原创 poj 1562 简单深搜

//搜八个方向即可#include#include#define N 200char ma[N][N];int n,m,vis[N][N];int dis[8][2]={1,0,-1,0,0,1,0,-1,1,1,1,-1,-1,1,-1,-1};void dfs(int x,int y) { int i,xx,yy; vis[x][y]=1; for(i=0;i<8;i++

2014-09-16 17:00:34 528

原创 zoj 2110 很好的dfs+奇偶剪枝

//我刚开始竟然用bfs做,不断的wa,bfs是用来求最短路的而这道题是求固定时间的//剪纸奇偶剪枝加dfs#include#include#include#includeusing namespace std;#define N 10char ma[N][N];struct node {int x,y,step;}ss,tt;int dis[4][2]={1,0,-1,

2014-09-16 16:48:48 751

原创 poj 1659 判断是否能构成图Havel-Hakimi定理

//用到了Havel-Hakimi定理,判断是否能够构图//两种情况不能构图,1:对剩下序列排序后,最大的度数超过了剩下的顶点数// 2:对最大的度数后面的f个度数减-后,出现了负数//记录到临街矩阵只需要每次排序后减-记录。#include#include#include#define N 20struct node{ int u,in

2014-09-16 15:57:53 560

原创 sdibt 1244类似于拓扑排序

参考潘神的博客:http://blog.csdn.net/mypsq/article/details/39005991#include#include#define N 30struct node {int x,y,xx,yy;}f[N],ff[N];int link[N],visit[N];int main() { int n,m,i,j,k,cou,index,cnt;

2014-09-02 19:41:39 654

gnutls-3.5.8-w32.tar.bz2

和openssl一样,一个比较全的加解密库,包括ocsp,证书,和各种算法等

2018-09-10

libasn1-0.1.0.tar.gz

一个比较好的asn1工具库,你可以通过这个已经写好的完整的asn1代码,来学习asn1标准,并使用.

2018-09-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除