自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

极度猥琐

技术拯救世界!

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

原创 git配置和简单使用

Git安装windows安装:百度

2014-07-17 20:57:25 657

原创 Ubuntn安装和入门

Ubuntu12.04安装:可用Wubi在windows系统上一键安装出现问题:Wubi自动更新到13.04,启动系统出现 can't read 'proc/mount'错误,账号不识别只能以访客登陆。解决:1.换个不会自动更新的wubi    2.断网安装Linux命令入门:推荐:鸟哥的私房菜,  或者 http://www.92csz.com/study/linux

2014-07-09 12:37:22 936

原创 13年多校总结

因为太水了, 几场下来我都主要是看几何, 其他方面就不考率拿多校来练习了~     直接进入主题吧~      计算几何提供的最基础的计算算法部分, 可以把它想象成像某种工具物品一样性质的东西, 理解以后用到就伸手就行了, 但是对于计算几何也是最重要的一部分。 小的什么距离计算, 点积叉积, 混合积, 公面共线, 大点的什么凸包,最近点对,最远点对也逃离不出这个范畴。这个部分的信手拈来

2013-08-25 17:52:32 819

原创 多校第七场

惭愧, 深跪,  各种跪~   学长的思路和标程一样 , trick都想出来了。 而且我对比标称, 写的程序连 长度,风格, 处理方式都一个样, 就是狂wa,后来发现处理凸包的时候不娶共线点就过了, 从此深跪不起~ 1002 Building Fence

2013-08-14 11:33:16 555

原创 HDU 4667 Building Fence

题意: 平面里给出M个三角形, N个圆形, 图形之间两两不相交, 求一个把这些图形围起来周长最小的一个圈的周长~分析:把三角形顶点分解成点, 对圆形求可能的切点:1.点和圆的两个切点, 2.圆和圆的外公切线切点。              对然后所有点求凸包, 处理周长的时候, 如果凸包上两个相邻点在同一个圆上, 则求相应的弧长~。此方法有个trick: 只有一个圆的时候需要特殊处理.

2013-08-14 11:24:47 897 1

原创 多校第五场

学长一眼就看出是求一条线段和M个多边形有多少个交点的问题~(太神了),网上目测都不是这样算的。第二次做多校几何载在读题上, 这题wa了整整两页, 但是发现理解题意错误后把第一次写的代码注释掉一行for就过了, 囧~ 1001 GSM

2013-08-08 10:29:00 643

原创 HDU 4643 GSM

题意: 求一条线段上的点到其他m个点有多少个最短距离, m个点中没有两点到线段上的端点距离相等~分析:用一个点和其他点的中垂线所在的半平面划分该点所在的区域, 该区域内任意一个点的距离到该点相对其他点距离最近.具体实现:用一个足够大的矩形覆盖所有点, 然后划分区域, 最后判断所问线段和多少个区域(凸包)有交点~#include #include #include #inclu

2013-08-08 10:21:10 702

原创 多校第四场

这题精度是个坑, 不知道为什么1e-10过不了, 1e-7就能过了, 总之花了好多时间, 在不经意中A掉了, 一度有想死的冲动~(连标点符号都考虑进去了~)1006 Rain on your Fat brother

2013-08-03 21:10:56 772

原创 HDU 4637 Rain on your Fat brother

题意可以归纳为:求一条线段和雨滴的交的总长度。分析:雨滴和线段的交点可以分为三角形和半圆的交点,注意线段可能会重复, 扫描线判重就可以了。#include #include #include #include #include #include #include #define FOR(i, n) for(int i = 0; i < n; i++)#define

2013-08-03 21:06:53 1045 1

原创 多校第三场

做的时候题意读错了, 理解成被不同覆盖次数的三角形顶点构成的多边形面积, 然后测试样例的时候花了好长时间手绘图形,之后就时间不够了。如果当时理解成覆盖面积的话,应该可以做, 因为没有trick, 重写的时候调通样例就可以过了。 1009Burning

2013-08-03 18:52:21 797 2

原创 HDU 4629 Burning

/*  题意: 求平面的n个三角形的不同覆盖次数(1 - n)的面积 。  分析:扫描线可以搞定。         扫描线:把三角形的顶点和交点的x轴的值排序, 这样就能把三角形给离散化, 然后枚举前后两条线之间的情况来计算。           前后两条搞毛线之间的情况变得很简单:都是由没有线交属于某个三角形的三角形或者梯形组成, 然后就可以从上到下遍历这些图形边, 依次计算面积

2013-08-03 18:36:46 1071

原创 Polygons

/*题意:判断一个顺时针凸包A是否包含(不包括边界)简单多边形B分析:判断B的每个点是否在A内; 因为m是1e5,m是1e4,如果判断算法在log(m)数量级左右, 所以O(n * Olog(m) )可以过*/#include #include #include #include #include #include #include #include #includ

2013-07-26 22:13:31 1225

原创 Weapon

/*题意:求是否存在两圆柱相交, 如果不存在求最短距离.分析:可以转化为空间直线距离问题,  然后如果距离 - 去半径和 > 0 则相交空间直线距离: 求两直线方向向量的确定的面的法向量n,  然后求出一条端点在不同直线上的任意向量, 最后通过点积可以求出该向量在法向量上的投影。投影的长度就是答案。 公式: dist = fas(dot(normal, anyVec) / vlen(n

2013-07-25 19:35:50 923 2

原创 Biridian Forest

//如果s - e的最短路比Breeder到e的最短路要长, 该Breeder就可以战斗, 因为它可以在终点等你~//反之如果某个Breeder的到e的最短路比s - e的最短路长,但是可以在你的路径点x上和你战斗,//那么它也可以比你先前后者同时到达e, 和假设相反。//所以比较最短路就行了, 用BFS给e打单源最短路径表, 然后比较就行了。#include

2013-07-24 20:35:28 778

原创 Purification

最少需要n次, 按行每行或者案列每列放一个, 如果不能存在就无解#include #include #include #include #include #include #include #include #define MAX 1005#define INF 1e8#define FOR(i, n) for(int i = 0; i < n; i++)#d

2013-07-23 21:05:55 1292

原创 Road Construction

星状图; #include #include #include #include #include #include #include #include #define MAX 1005#define INF 1e8using namespace std;int n, m;int du[MAX];vector >adj;int main(){ c

2013-07-23 19:48:48 1062

原创 Cakeminator

模拟#include #include #include #define MAX 1005using namespace std;int r, c;int ans;char s[MAX][MAX];bool v[MAX][MAX];int main(){ while(cin>>r>>c){ getchar(); for(int

2013-07-23 19:21:39 703

原创 XOR and OR

题意:给两个值有0和1的字符串a, b.问a能否转化到b.转化操作:取连个相邻的数字x, y,  q = x ^ y, p = x || , 然后q取代xy其中一个,p取代另一个。分析: 只要a含有1,a可以转化为任意含有1的长度相等的字符串。   #include #include #include #include #include #define MAX 1000005

2013-07-22 21:20:26 805

原创 Painting Eggs

题意: 有N对和为1000的数(ai + gi = 1000), 每对选择一个, 求两边相差不超过500的任意分配方法分析:设有x个ai 则, 差值可以表示为 x * 1000 - sum(gi).枚举x输出答案即可。#include #include #include #include #include #define MAX 1000005using namespace s

2013-07-22 21:15:49 733

原创 Bit++

模拟#include #include #include #include #define MAX 1005using namespace std; int n;int main(){ ///freopen("in.txt","w",stdout); cin>>n; getchar(); int ans = 0; char s[MAX];

2013-07-22 21:08:24 590

原创 poj 1264 SCUD Busters

题意:给出一个k个王国, 每个由Ni个点的确定的凸包确定。之后给出多个炮弹, 如果炮弹落在凸包里, 该王国被停电,王国没有重合面积。问被停电的面积。分析:简单多边形面积, 点和凸包的关系。#include #include #include #include #include #include #include #include #include #define

2013-07-20 11:12:16 797

原创 CF 327B Hungry Sequence

题意: 求出N个严格升序, 前面的数都不能被后面的数整除的序列, 分析:因为N #include #include #include #include #include #include #include #include #include #define INF 1e8#define MAX (int)1e5+ 5#define eps 1e-8using nam

2013-07-19 21:26:19 757

原创 CF 327A Flipping Game

/*N很小, 模拟 */#include #include #include #include #include #include #include #include #include #define INF 1e8#define MAX (int)1e6+ 5#define eps 1e-8using namespace std;int n;int a[M

2013-07-19 21:21:26 742

原创 poj Grandpa's Estate

题意:爷爷的农场是一个用大钉打点确定凸包,但是有些大钉不见了, 输入现存的N个刚好构成凸包的点, 求这些点能否唯一确定一个凸包。分析:1.如果凸包边上至少含有一点, 则凸包可以唯一确定, 因为在凸包边上的外围加上一个点, 则凸包会多出一个不在凸包上的点。   2. 如果点都共线, 则外围凸包上可以随便放一个或多个点, 凸包不确定。#include #include #inc

2013-07-18 22:46:46 1231 1

原创 poj 1265 Area

/*题意: 求顶点为整点的简单多边形边面积A, 其边上的格点数, 内部的格点数。 Pick定理:A = I + E/ 2 - 1(前提为顶点为整数)一开一闭区间(x1, y1)-> (x2, y2)的上的格子点数为 gcd(|x1 - x2|, |y1 - y2|);然后就可以水了, G++输出“%.1f”   C++输出 “%.1lf” 不然就会WA*/#incl

2013-07-17 21:31:47 1005

原创 poj 1385 Lifting the Stone

题意:给出n个按构成简单多边形顺序的点,求出多边形的重心简单多变形状重心:sum(各个三角形重心 * 三角形有向面积权重)各个三角形如图所示: #include #include #include #include #define MAX 1005#include #include #include #include #include #defi

2013-07-16 22:44:44 766

原创 Build String

/*最小费用最大流: 在流量最大的时候, 花费最小;算法: 1.每次用spfa寻找增广路, 如果存在最小花费路, 则在最小花费路上增广流量,          2.然后更新该路径上的弧的容量,重复1。直到找不到增广路。图论题都难在抽象模型建图上~, 熟练后就是一眼题~*/#include #include #include #include #define

2013-07-15 12:46:43 760

原创 Primes on Interval

题意:找到最小的一个在[1, b - a+ 1]上的数l , 使得属于[a, b - l + 1]上的所有x满足[x, x + l - 1]都至少有k个素数。 分析:l越小, x变多, 同时x +l - 1上的素数也越少。所以可以二分l找到最小值。  预处理素数。#include #include #include #include #define MAX 1005

2013-07-13 15:21:02 859

原创 Young Table

题意: 对一个每个数都唯一的动态矩阵每次进行两个数的位置交换操作(交换次数不超过总个数), 要求最终结果矩阵满足左到右为小到大,上到下为小大。输出变换个数和过程。分析: 最终结果就是矩阵排序后的结果。 然后原矩阵按最终结果矩阵来移动。一个个放到正确位置的操作个数最多不会超过总数字个数。所以:一个个放。#include #include #include

2013-07-13 14:58:59 800

原创 Free Cash

题意: 给出n个客人进店的时间(hi,mi),按24小时制,  服务每个人需要1分钟, 求最少需要多少人。分析:因为服务时间为1分钟, 客人进店的时差也是1分钟, 所以要么同一时间服务多个同时进店的人, 要么随便一个人服务其他仅一个人进店的人。   不用考虑没服务完一个人又有其他人进店。(差点写搓了)所以:对时间排序, 求出最大重复时间个数就是答案。#include

2013-07-13 14:45:42 936

原创 poj 1584 A Round Peg in a Ground Hole

题意:1.所有的点不能刚好能构成凸包输出:HOLE IS ILL-FORMED      2.否则如果圆不超出凸包输出:PEG WILL FIT,不然输出:PEG WILL NOT FIT分析:先判断判断是不是凸包, 是凸包的情况下判断圆是否在凸包内(包括内切)。判断凸包:获取凸包,如果最后顶点数和凸包顶点数不一样就不是。判断圆是否在凸包内:判断圆心在凸包内,在

2013-07-10 12:41:51 1003

原创 poj 2653 Pick-up sticks

题意:按顺序给出线段, 上面的可能会覆盖下面的, 求出不被其他线段覆盖的所有线段分析:暴力搜索,如果一条线段不被后面任一条覆盖,则它是答案之一重点:线段的平行,相交,点与线段的位置关系的判定, 点积叉积的灵活运用。#include #include #include #include #include #include #include #define

2013-07-07 03:11:40 580

原创 poj 1696 Space Ant

题意:对顶点圈出一个向左转的最长的罗璇, 顶点只能走过一次,罗璇没有交线;分析:对任意点集, 都能圈出一个罗璇包含所有节点; 用叉积判断罗璇方向,圈出罗璇就行,注意输出点数和起始位置#include #include #include #include #include #include #include #define MAX 10005#define INF 1

2013-07-07 01:32:22 859

原创 Poj 1556 The Doors

题意:求穿越对角线为(0,0,10,10)矩形的(0,5)到(10,5)的最短路径        在矩形里面存在竖直的墙体, 没个墙上在上面开了两个口:用5个参数描述x,y1, y2, y3, y4x为墙的x坐标,y1-y4为从下到上的缺口端点方法: 以所有墙的墙角(缺口处)和起始两点为顶点,建立无向图。建图过程中需要判断两条线段是否相交。=》知识点

2013-07-03 12:10:10 662

原创 Problem G

最小边覆盖#include #include #include #include #include #include #include #include #include #include //#include "myAlgorithm.h"#define MAX 1005#define OFFENCE (1e9 + 5)#define

2013-04-29 21:14:25 646

原创 Problem F

最小边覆盖#include #include #include #include #include #include #include #include #include #include #include //#include "myAlgorithm.h"#define MAX 10005#define OFFENCE (1e9 + 5)

2013-04-29 21:11:35 592

原创 Problem D

最大独立团#include #include #include #include #include #include #include #include #include #include //#include "myAlgorithm.h"#define MAX 1005#define OFFENCE (1e9 + 5)#define

2013-04-29 21:09:09 533

原创 Problem C

最大独立集#include #include #include #include #include #include #include #include #include #include //#include "myAlgorithm.h"#define MAX 10005#define OFFENCE (1e9 + 5)#define I

2013-04-29 21:06:13 737

原创 Problem A

二分图最小点覆盖       #include #include #include #include #include #include #include #include #include #include //#include "myAlgorithm.h"#define MAX 105#define OFFENCE (1e9 + 5

2013-04-29 21:03:34 494

原创 HDU 1569 方格取数(2)

/**    对于此题, 唯一想到的是不能搞的:暴搜,还有转移方程不明的dp~~~    这种题必须对相关算法有一定的了解, 依靠前人已经总结的智慧,    俗话说站在巨人的肩膀上, 不然想破头皮都没用~~~     还是先学学算法吧, 领会算法的就一眼望穿了~~~, 继续水~~~  ————————————————————————————————————    学习了下,

2013-04-29 20:58:02 594

空空如也

空空如也

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

TA关注的人

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