自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Leezard's Journey

暂时写acm算法和模板

  • 博客(51)
  • 收藏
  • 关注

原创 convexhull

//大白p263#include #include #include #include #include #include #include #include #include #include using namespace std;const double eps=1e-8;//精度const int INF=0x3f3f3f3f;con

2014-03-10 17:28:09 615

原创 ZJU 3733 长沙现场赛 H Skycity

这题做的我真是李菊福了下午做重现的时候一直调不出样例晚上拉到自己电脑上一跑立马出了样例   哭翔晚上看了个大神用二分过的其实可以不用二分,直接int count = (int )(2*PI/(最小长度对应当前半径的角度))因为强制转换丢掉了小数部分(余数)所以就可以得到最多count边形   (再多边长就会小于最小长度了)最后int cnt=(int )(ful

2013-11-24 23:19:29 1940

原创 后缀数组之最长重复不重叠子串 PKU1743

#include#includeusing namespace std;const int MAXN=20010;struct SuffixArray{ int wa[MAXN]; //用来进行基数排序或临时变量 int wb[MAXN]; //用来进行基数排序或临时变量 int wv[MAXN]; //用来进行基数排

2013-11-13 19:46:46 649

原创 后缀数组之最长重复子串

字符串中所有的子串---都是这个字符串的后缀字符串中的某个前缀  例如BANANA   ANAN子串  是后缀ANANA的前缀height[i]定义为sa[i-1]和sa[i]的最长公共前缀LCP的长度任何重复子串  必然是两个后缀中的某个公共前缀那么输出所有最长公共前缀中最长的即可  (max(height[] )

2013-11-13 17:47:29 568

原创 linux系统服务基础

服务分为本地服务和网络服务配置较多的是为了网络服务常见的网络服务有:邮件服务Mail文件共享:FTP、SMB、HTTP网游域名服务DNS/etc/rc.d/init.d/下保存着许多服务对应的脚本service xxxx start|stop|restart|status在/etc/rc%d.d/下保存着许多链接 链接到之前所说的脚本文件名的格式如下[k|p]xxn

2013-09-13 16:48:29 991

原创 简单易用的cookie加密方法

在保存用户信息阶段,主要的工作是对用户的信息进行加密并保存到客户端。加密用户的信息是较为繁琐的,大致上可分为以下几个步聚:① 得到用户名、经MD5加密后的用户密码、cookie有效时间(本文设置的是两星期,可根据自己需要修改)② 自定义的一个webKey,这个Key是我们为自己的网站定义的一个字符串常量,这个可根据自己需要随意设置③ 将上两步得到的四个值得新连接成一个新的字符串,再进行

2013-09-08 21:21:36 4120 1

原创 FTP原理以及vsftpd服务配置

FTP使用TCP协议作为底层传输协议FTP有两种工作模式传统的FTP支持的是主动模式Active Mode首先客户端连接服务端的21端口之后服务端返回客户端将要使用的一个大于1023的随机端口接下来服务端痛过20端口向客户端使用的那个随机端口发起连接所谓主动 就在于服务端会主动发起连接主动模式也是一个标准的FTP模式由于防火墙一般会阻止外来发起的连接于是被动

2013-09-06 22:10:23 848

原创 linux系统日志及其rsyslog服务

日志是系统用来记录系统运行时候的一些相关信息的纯文本文件/var/log下保存着大量的纯文本日志文件日志的目的是为了保持相关程序的运行状态,错误信息,为了对系统运行进行错误分析使用1.内核信息2.服务信息3.应用程序信息

2013-09-05 13:59:35 1450

原创 linux下自助获取帮助

几乎所有命令都可以用 -h 或者--help参数 获取命令的使用方法帮助man ls   也可以获取ls命令的详细帮助信息man -k XXX  可以查看包含关键字XXX的文档还有一个更详细的命令叫作info对于man 和info 进入帮助之后都可以使用搜索命令输入/XXX  则可以查找所有的关键字XXX并且高亮显示按空格翻页查看即可如果你还觉得不够

2013-09-04 22:10:16 680

原创 linux启动流程及相关操作

First-BIOS首先BIOS  知道就行了详细的我也不懂,,大约是计算机进行自检如果硬件有问题会报错之后检查光盘 U盘之类可启动设备 即设备上有引导信息重点是第一个扇区的512字节的最后两个字节是55AA接下来 就交给MBR了 若是EFI的 可以是GPT之类Second-MBR然后是MBR   这时就已经到了硬盘上了MBR引导代码仅有448字节,在于去寻找引导程

2013-09-04 00:07:13 1430 1

原创 linux 网络基础配置

首先  eth0   1  2  3 代表网卡编号如果是pci网卡 lspci可列出usb可用lsusbifconfig -a  查看所有接口配置ifconfig eth0ifup eth0ifdown eth0   开启、关闭 eth0setup 命令开启设置界面选择network  configuration空格可以选择、取消DHCP

2013-09-03 11:06:20 840

原创 linux 网络基本概念

子网掩码用于表示那些是网络部分和IP地址一样也拥有32位IP地址中与子网掩码对应为1的部分是网络部分其他是主机部分IP必须和子网掩码成对出现才有意义192.168.1.0/24  表示这个IP地址前24位是网段例如10.0.0.0/8  的前8位是网段(子网掩码为255.0.0.0)MAC也叫二层地址 IP叫三层地址内网通信直连的   很简单源向外发送ARP信息

2013-09-02 14:21:47 442

原创 后缀数组

#include #include #include using namespace std;const int MAXN = 1005;char s[MAXN];int sa[MAXN],t[MAXN],t2[MAXN],c[MAXN],n;void build_sa(int m){ int i,*x=t,*y=t2; for(i=0;i<m;i++) c[i]=0

2013-09-01 21:14:09 538

原创 linux 管道和重定向

STDIN      0  默认是键盘  键盘也是文件STDOUT  1  默认是命令行STDERR  2  默认是命令行重定向>>>filename   追加ls -a | grep "a.cpp"    在ls的输出中抓取正则表达式为"a.cpp"的行 重定向到 null 将丢弃

2013-08-29 21:22:17 508

原创 linux 用户权限相关

chown username filenamechgrp groupname filename-R 递归修改u g o分别代表 user group other  a代指agochmod u+rw filenamechmod go-w filename同样可以 -R 递归 修改 所有文件和文件夹chmod NNN filename 数字表示法r==2^2==4w

2013-08-29 14:46:30 493

原创 linux命令

jobs -- 查看当前进程CTRL+C -- 终止CTRL+Z -- 暂停(signal 17)bg -- 继续进程fg -- 调至前台pwd -- 当前目录ls -l -- 详细信息ls -a -- 包括隐藏文件ls -ld -- 目录信息touch -- 创建更新文件ls -R -- 显示目录及子目录file xxxxx -- 显示文件信息

2013-08-27 15:42:22 523

原创 hdu 4679 Terrorist’s destroy

题目大意:有个生成树,每条边长度是1恐怖分子炸掉其中的一条边后分为两棵树得到值为temp两棵树的直径中较大的直径乘以这条边的权值求炸掉哪一条边得到的temp最小解法1:树形DP,求每个节点的所有分支的最大值 次大值 第三大值砍掉一条边后,在三个值中选择两个未被砍的值就是这棵树的直径解法2:两次求整棵树的直径如果砍掉的边不在直径上,那么temp

2013-08-19 16:08:30 765

原创 HDU 2577 How to Type

呵呵一层for循环暴力即可策略在于仅当后两个字母和之前字母不同时才按下CapsLock例如(AbbAAA)    ( aBBcccc)其他情况(AAAbCCC   cccDkkk)按下shiftDP也可#include#include #include using namespace std;int main(){ int T; char str[105];

2013-08-14 19:27:18 639

原创 2013 多校第七场 hdu 4667 Building Fence

题意:给一些互不相交的圆和三角形求一个最短的围栏长度将他们包围在内解法1:将圆细分成2000个点加入点集(10W个),做凸包(nlogn),比赛的时候shuangde想到了,但是细分成500个点就超时了  精度不够结束后看到 沉溺大神的博客  他也是使用此方法。。。。。然后G++900+ms能过   给跪后来改了下模板代码  全加了引用和 inline关键字    几何模板

2013-08-14 10:56:04 886

原创 UVA 1298 - Triathlon

点击打开链接题意:铁人三项比赛分成连续的三段:游泳、自行车和赛跑。现在每个单项比赛的长度还没定,但已知各选手在每项比赛中的平均速度(假定该平均速度和赛程长度无关),所以你可以设计每项比赛的长度,让某个特定的选手获胜。你的任务是判断哪些选手有可能获得冠军(并列冠军不算)。解法:假设比赛送长度为1,其中游泳长度x,自行车长度y,赛跑长度1-x-y,则选手i打败选手j的条件是:x/v

2013-08-12 19:59:44 840

原创 1396 - Most Distant Point from the Sea

点击打开链接题意:按顺序给出一小岛(多边形)的点求岛上某点离海最远的距离解法:不断的收缩多边形(求半平面交)直到无限小二分收缩的距离即可如图  //大白p263#include #include #include #include #include #include #include #include #include #includ

2013-08-12 16:48:37 716

原创 UVA 1453 - Squares

点击打开链接题意:给你一大波正方形左下角的点及其边长实际上就是40W个点然后求平面上最远两点的距离的平方旋转卡壳模板题 //大白p263#include #include #include #include #include #include #include #include #include #include using namespace s

2013-08-12 15:17:44 875

原创 UVA 11168 - Airport

题意:给出平面上n个点,找一条直线使得所有点在直线的同侧(也可以再直线上)且到直线的距离之和尽可能小求最小的平均距离思路:要求所有点在直线同侧,因此直线不能穿过凸包。不难发现,选择凸包上的边所在的直线是最优的。关键是求所有点到直线的距离,我们可以枚举每一条凸包上的边,把直线用点斜式表示出来,然后通过一般式求出所有点到直线的总距离。由于所有点在Ax+By+C = 0的同一

2013-08-12 15:04:18 714

原创 UVA 10652 Board Wrapping

点击打开链接题意:给多个矩形和其被顺时针旋转的角度求矩形面积和凸包面积的比验证模板题 //大白p263#include #include #include #include #include #include #include #include #include #include using namespace std;const double ep

2013-08-12 14:10:18 669

原创 UVA 10498 Happiness

点击打开链接裸的线性规划题意:有n种食品 m个不等式例如第一个不等式表示第一个人获得每种食品能得到1 2 1的满足度不等式右边第一个人的满足度不应大于430网上找了个靠谱模板呵呵  #include #include /**Simplex C(n+m)(n)maximize: c[1]*x[1]+c[2]*x[2]+...+c[n]*x[n]=a

2013-08-12 10:17:52 1362

原创 UVA 算法竞赛 入门经典 Volume 2. Data Structures :: Lists 题解合集

数据结构基础题代码合集UVA 算法竞赛 入门经典 Volume 2. Data Structures :: Lists 题解合集

2013-08-11 14:00:14 927

原创 UVA 421 Polygonal Puzzle

呵呵//大白p263#include #include #include #include #include #include #include #include #include #include using namespace std;const double eps=1e-8;//精度const int INF=1<<29;const double PI=ac

2013-08-10 19:54:21 716

原创 uva 839 Not so Mobile 输入外挂

本题使用了getchar()编写的输入函数代替scanf效率大大提高 #include int Scan() { int res = 0 , ch; while( !( ( ch = getchar() ) >= '0' && ch <= '9' ) ) { //if( ch == EOF ) return 1 << 30 ; } res =

2013-08-10 16:10:18 598

原创 UVA 10801 Lift Hopping

#include #include #include #include #include #include #include #include #include #include using namespace std;int tim[10];int n,k;int lift[101][101];int temp[10][101];const int INF=0xff

2013-08-10 16:07:19 547

原创 UVA 10034 Freckls

#include #include #include #include using namespace std;double map[101][101];double lis[101][2],mincost[101];bool vis[101];int n,pre[101];inline double getDist(double x1,double y1,double x2,d

2013-08-10 16:05:46 598

原创 UVA 10867 Cutting a Polygon

呵呵又A不过去  还搜不到题解  给跪给组高端样例input:9 10 00 21 12 23 14 25 16 26 00 2 2 00 0output:2.828 //大白p263#include #include #include #include #include #include #include

2013-08-10 15:56:36 635

转载 计算几何入门题推荐、计算几何题目合集

计算几何题的特点与做题要领:1.大部分不会很难,少部分题目思路很 巧妙2.做计算几何题目,模板很重要,模板必须高度可靠。3.要注意代码的组织,因为计算几何的题目很容易上两百行代码,里面大部分是模 板。如果代码一片混乱,那么会严重影响做题正确率。4.注意精度控制。5.能用整数的地方尽量用整数,要想到扩大数据的方法(扩大一倍, 或扩大sqrt2)。因为整数不用考虑浮点误差,而且运算

2013-08-10 14:29:57 903

原创 UVA 10321 Polygon Intersection

点击打开链接题意:求两凸多边形相交所得多边形点排序输出 //大白p263#include #include #include #include #include #include #include #include #include #include using namespace std;const double eps=1e-8;//精度const

2013-08-10 14:07:40 721

原创 UVA 313 Intervals

点击打开链接这题got WA again again and again求指教 //大白p263#include #include #include #include #include #include #include #include #include #include using namespace std;const double eps=1e-8;

2013-08-09 20:54:11 707

原创 UVA 303 Pipe

点击打开链接题意:求光线能达到的最大横坐标注意光线可以和管道重合也可以经过转折点解法:枚举每种光线是否能通过每个转折点的截面(线段)即可 //大白p263#include #include #include #include #include #include #include #include #include #include using

2013-08-09 16:26:05 614

原创 UVA 10585 Center of symmetry

点击打开链接题意:先求出所有点的重心然后根据重心找对称点看对称点是否都存在即可 //大白p263#include #include #include #include #include #include #include #include #include #include using namespace std;const double eps=1

2013-08-08 21:13:25 715

原创 UVA 10556 Biometrics

点击打开链接解法:呵呵   double精度问题暴力旋转匹配没法过也许高精度可以  没试过参考了大牛的博客改用整形推公式过了 #include #include #include using namespace std;struct point{ int x,y; point(int x=0,int y=0):x(x),y(y){}};po

2013-08-08 20:34:56 803

原创 UVA 10075 Arilines

点击打开链接题意:最短路。。。。披着三维的外衣     #include #include #include #include #include #include #include #include #include #include using namespace std;const double eps=1e-10;//精度const

2013-08-07 22:21:05 1029

原创 UVA 1301 Fishnet

点击打开链接题意:给一个渔网样的坐标求面积最大的网格的面积    //大白p263#include #include #include #include #include #include #include using namespace std;const double eps=1e-6;//精度const int INF=1<<29;con

2013-08-07 18:37:57 605

原创 HDU 4649 Professor Tian

点击打开链接这题递推ans[20]记录每一位1出现的概率全部加起来即可有的数字二进制虽然没有20位但必须要判断到20位WA了好多次还好双德大神指出这个错误http://blog.csdn.net/shuangde800/article/details/9816479这是他的题解  #include #include #include using nam

2013-08-07 16:36:11 557

空空如也

空空如也

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

TA关注的人

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