03 2014 档案

摘要:AG 1 /*1543*/ 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #define maxn 51000 11 #defin... 阅读全文
posted @ 2014-03-31 18:24 little_w 阅读(132) 评论(0) 推荐(0)
摘要:1 /* 2 POJ - 2438 哈密顿回路 3 图的可行遍问题:一般就是哈密顿图和欧拉图 4 这类问题,代码和算法本身简单,关键就在于建模。 5 一般判断问题只要判断是否可行遍历! 6 但是有的时候会有奇葩的要求: 7 例如:遍历一张欧拉回路图:深度遍历不回溯法,o(n) 8 ... 阅读全文
posted @ 2014-03-21 00:36 little_w 阅读(990) 评论(0) 推荐(0)
摘要:简介:2013 ACM ICPCSoutheast USA Regional Programming Contest原地址:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&category=62... 阅读全文
posted @ 2014-03-18 19:39 little_w 阅读(132) 评论(0) 推荐(0)
摘要:(主要是各基本知识点的例题,查缺补漏,希望以后比赛不要有本来应该掌握的知识点,却不知道的情况)1、一元线性同余方程组的一般性解法(拓展gcd、剩余定理) 1 /*poj2891*解一次线性同余方程组/ 2 /x%a[i]==r[i]*/ 3 /*通解*/ 4 #include 5 #include 6 #include 7 #define maxn 10000+5 8 #define LL long long 9 using namespace std;10 LL r[maxn],m[maxn];11 12 void Ex_gcd(LL a,LL b,LL &d,LL &x,L 阅读全文
posted @ 2014-03-18 09:57 little_w 阅读(297) 评论(0) 推荐(0)
摘要:HDU4379 1 #include 2 #include 3 #include 4 #define INF 3000000000 5 #define LL long long 6 using namespace std; 7 8 int main(){ 9 LL n,A,B,l,mod,num,a;10 LL max1,min,M;11 while(~scanf("%I64d%I64d%I64d%I64d%I64d",&n,&l,&A,&B,&mod)){12 max1=-1,num=0;min=INF;M=l/2;13 for(L 阅读全文
posted @ 2014-03-15 21:21 little_w 阅读(172) 评论(0) 推荐(0)
摘要:1 /*uva 11865 2 最小生成树瓶颈路 3 本来写了个BFS预判和LA5713一样,还线性优化了存储,结果还是T了, 4 不得不用LCA了,cry瞎 5 */ 6 #include 7 #include 8 #include 9 #include 10 #include... 阅读全文
posted @ 2014-03-12 22:10 little_w 阅读(271) 评论(0) 推荐(0)
摘要:1 /*POJ 3164 2 一个通信网络被破坏了 3 给定每个点的坐标,和两两之间可修复的边和长度 4 现在选择部分修通,使从1点出发可到达所有点,并且代价最短 5 6 可看出是一个生成树的问题,做了UVA的那道,这道很简单了 7 8 PS:unidirection 是有向 ... 阅读全文
posted @ 2014-03-12 19:40 little_w 阅读(339) 评论(0) 推荐(0)
摘要:1 /*uva11865 二分+最小树形图(朱刘算法) 2 注意二分的写法,树形图可作为模板,ps:杭电的模板有问题 3 */ 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #includ... 阅读全文
posted @ 2014-03-12 19:12 little_w 阅读(224) 评论(0) 推荐(0)
摘要:1 /*LA 5717 2 《训练指南》P343 3 最小生成树的回路性质 4 在生成的最小生成树上,新增一条边e(u,v) 5 若原图上u到v的路径的最大边大于e,则删除此边,加上e,否则不变。 6 7 若原图上u到v的路径的最大边的产生:BFS/DFS都可 ,nm的复杂度,从每... 阅读全文
posted @ 2014-03-12 00:18 little_w 阅读(452) 评论(0) 推荐(0)
摘要:A: 二分图着色/图中有奇圈分析:难在思路上,如果对图论的算法掌握比较全面的话,看到这么大的n和multiply,应该想到o(n)的图搜索;这道题应该判连通,但是数据很水,不判也过。二分图不能拿来判连通。题源:http://acm.hdu.edu.cn/showproblem.php?pid=347... 阅读全文
posted @ 2014-03-09 21:33 little_w 阅读(189) 评论(0) 推荐(0)
摘要:1 //zoj3759 2 //http://www.bingfengsa.com/info/18001.html 3 //学习笔记(仅仅是填充学习博文中的知识点而以) 4 /* 5 【题目要求】: 6 找到:x(x+1)/2=ky^2 -x^2-x+2ky^2=0 (2x+1)^2-8k*y^2=1 7 x^2=ky^2 x^2-ky^2=0; 特殊 8 x(3x-1)/2=ky^2 3x^2-x-2ky^2=0 (6x-1)^2-24ky^2=1 9... 阅读全文
posted @ 2014-03-08 17:57 little_w 阅读(345) 评论(0) 推荐(0)
摘要:1 /*Zoj3762 2 学习from:http://blog.csdn.net/libin56842/article/details/20402031 3 题目:给定了500个点的二维坐标,求在这些点形成的所有三角形中,最长的高是多少 4 一开始想简单了,想是求一个凸包,最多n-1条边,分别以这些边为底,然后再枚举其他的所有定点,找出最长高, 5 这样的话,就是n^n的复杂度。 6 结果第一组数据,为底的两个点,是在凸包内部的点啊,这组数据给的真是很良心了。 7 这也告诉我,以后在比赛的时候,要先手动画出数据,再测试 8 9 后来想到点到直线的距离公式,可惜,没有什么... 阅读全文
posted @ 2014-03-08 16:04 little_w 阅读(156) 评论(0) 推荐(0)
摘要:1 /*LA4080最短路树的应用 2 这道题的目的就是让人去合理运用最短路算法中的信息? 3 求两两点之间的距离之和,一般让人去想到Floyd,或者n次的DIJ,但是Floyd算法虽然精简,但是可用的信息比较少,一次就要n^3的复杂度, 4 如果直接这样做,肯定会超时,然而dij就灵活的... 阅读全文
posted @ 2014-03-08 15:18 little_w 阅读(411) 评论(0) 推荐(0)
摘要:1 //uva10917 dij单源最短路预处理+构造新图(DAG)+求图上路径数 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #define maxn 1100 13 #define INF 100000000 14 using namespace std; 15 16 vectorG[maxn]; 17 int d[maxn];//DAG上dfs记忆化,存储i到终点的路径数 18 st... 阅读全文
posted @ 2014-03-08 14:06 little_w 阅读(442) 评论(0) 推荐(0)
摘要:1 //uva11374 dij单源最短路+枚举 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 ... 阅读全文
posted @ 2014-03-08 13:22 little_w 阅读(261) 评论(0) 推荐(0)
摘要:1 /*LA3713 2 典型的2-sat模型 3 宇航员分两类: 4 1、年龄少于平均 young 5 2、至少为平均 6 矛盾: 7 情况一:如果两个宇航员属于同一类且相互矛盾的话,则他们两个的选择一定是不相同的 8 情况二:如果不属于同一组相互矛盾,不能同时选C任务 9 建... 阅读全文
posted @ 2014-03-07 01:40 little_w 阅读(442) 评论(0) 推荐(0)
摘要:部分参照:From:http://blog.csdn.net/jarjingx/article/details/8521690综述:每个条件的形式都是x[i]为真/假或者x[j]为真/假,每个x[i]拆成2*i和2*i+1两个点,分别表示x[i]为真,x[i]为假;加的每一条边之间的关系是and模型一:两者(A,B)不能同时取(但可以两个都不选)说明:A为假或B为假那么选择了A就只能选择B’,选择了B就只能选择A’连边A→B’,B→A’模型二:两者(A,B)不能同时不取(但可以两个都选)说明:A为真或B为真那么选择了A’就只能选择B,选择了B’就只能选择A连边A’→B,B’→A模型三:两者(A 阅读全文
posted @ 2014-03-07 01:39 little_w 阅读(289) 评论(2) 推荐(0)
摘要:1 /*LA3211 2 2-sat+二分答案 3 现在统一建模的方式: 4 1、同一组的两个状态分别存储在2*i和2*i+1两个节点,产生2*n个节点 5 2、for(int i=1;i 15 #include 16 #include 17 #include 18 #include 19 #include 20 #include 21 #include 22 #include 23 #include 24 #include 25 #include 26 #include 27 #include 28 #include 29 #define INF 0x... 阅读全文
posted @ 2014-03-07 00:41 little_w 阅读(210) 评论(0) 推荐(0)
摘要:1 /*HDU3622 2 这道题是2-sat问题的体型之一,二分答案,2-sat判断是否有自适应的解,从而找到最大的最小值或最小的最大值 3 这道题有一定的思维上的难度。 4 二分半径,若不同组的两个点i和j间的距离小于2*rad,则i和j是矛盾点,连上相应的边,求2-sat即可。 5... 阅读全文
posted @ 2014-03-07 00:18 little_w 阅读(246) 评论(0) 推荐(0)
摘要:1 /*八数码问题UVA10085: 2 隐式图搜索: 3 我觉得解决这类问题,有几点很重要: 4 1、状态的表示(压缩状态表示可以减小空间复杂度) 5 2、时间复杂度(状态数)的正确评估,你要保证暴力法是可以解决的。换句话说,状态很快会被填满 6 3、编码的细心程度(废话,不过算法简... 阅读全文
posted @ 2014-03-05 23:10 little_w 阅读(312) 评论(0) 推荐(0)
摘要:1 /*倒水问题UVA10603: 2 隐式图搜索: 3 我觉得解决这类问题,有几点很重要: 4 1、状态的表示(压缩状态表示可以减小空间复杂度) 5 2、时间复杂度(状态数)的正确评估,你要保证暴力法是可以解决的。换句话说,状态很快会被填满 6 3、编码的细心程度(废话,不过算法简单的话,对编码... 阅读全文
posted @ 2014-03-05 20:46 little_w 阅读(268) 评论(0) 推荐(0)
摘要:1 /*UVA10078 2 按顺序输入多边形上的点,判断它是一个凸边形还是凹多边形 3 方法:求凸包,如果凸包的点数少于原来多边形的点数,就一定是凹的,不变则是凸的。 4 所以这里的数目特别重要 5 所以凸包上共线的点要算上,在求凸包的函数中方向向量的旋转,记得是 9 #include 10 #... 阅读全文
posted @ 2014-03-05 01:32 little_w 阅读(504) 评论(0) 推荐(0)
摘要:1 /*UVA10002 2 求凸包的质心,而且这道题并没有说明是否按照顺序排序,还是最好求一下凸包 3 注意结构体的构造函数赋初值的问题 4 ps:整理模板 5 */ 6 #include 7 #include 8 #include 9 #include 10 #inc... 阅读全文
posted @ 2014-03-05 01:19 little_w 阅读(576) 评论(0) 推荐(0)
摘要:1 /*UVA10088 2 pick定理: 3 在坐标为整数的二维平面内,对于任意多边形,有s=a+b/2-1,其中b是落在边上的点数,a是内部点数,s是多边形的面积 4 两个整点连线上的整点的个数是gcd(dx,dy) 5 You may assume that none of the coo... 阅读全文
posted @ 2014-03-05 01:11 little_w 阅读(1231) 评论(0) 推荐(0)
摘要:1 /* 2 HDU - 1824 3 主要是题目描述比较坑爹,注意:队长回家两队员都必须在,只要有一个队员回家,队长都必须在。 4 同时贴上一段看到的让我警醒的话: 5 “这里我说一个细节问题,很多初学者容易忽视 6 那就是边的链接方向。 7 到底是谁指向谁,这个问题,很多初学者容易混淆(比如本... 阅读全文
posted @ 2014-03-05 01:06 little_w 阅读(471) 评论(0) 推荐(0)
摘要:from:http://www.cnblogs.com/jbelial/archive/2011/08/08/2131165.html1. 1 累加和求重心设平面上有N 个离散数据点( xi , yi ) ( i = 1, 2, ., n) , 其多边形重心G( . x1, . y1) 为: 这是求多边形最简单直观的方法。可以直接利用离散数据点的x, y坐标就能求图形重心。但是缺陷在于没有对离散数据点所围图形做任何处理和分析,精度不够。1. 2 算法一:在讲该算法时,先要明白下面几个定理。定理1 已知三角形△A1A2A3的顶点坐标Ai ( xi , yi ) ( i =1, 2, 3) ... 阅读全文
posted @ 2014-03-04 22:10 little_w 阅读(493) 评论(0) 推荐(0)
摘要:from:http://blog.csdn.net/hanchengxi/article/details/8639476一、目录一些历史:1978年, M.I. Shamos's Ph.D. 的论文"Computational Geometry"标志着计算机科学的这一领域的诞生。 当时他发表成果的是一个寻找凸多边形直径的一个非常简单的算法, 即根据多边形的一对点距离的最大值来确定。后来直径演化为由一对对踵点对来确定。 Shamos提出了一个简单的O(n)时间的算法来确定一个凸n角形的对踵点对。 因为他们最多只有 3n/2 对, 直径可以在O(n)时间内算出。如同To 阅读全文
posted @ 2014-03-04 01:10 little_w 阅读(2117) 评论(0) 推荐(0)
摘要:时间2014/3/3zoj3758 生成指定的一个大数字,并判断是否是素数 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #i... 阅读全文
posted @ 2014-03-03 21:13 little_w 阅读(262) 评论(0) 推荐(0)
摘要:1 /*HDU3062 2 2-sat入门 3 虽然是入门,关于2-sat算法的实质的理解还是花了蛮久的时间。 4 这道题还是有一些思维上的技巧。因为每对夫妇,最多且必须要去一个人,就是总共去了n个人。 5 我开始时以每个人分别去否建模,这样还要满足上面的条件,显然算法是难以实现的。 ... 阅读全文
posted @ 2014-03-03 00:55 little_w 阅读(468) 评论(0) 推荐(0)
摘要:1 /*UVA 11324强连通分量缩点+DAG上最长路(不明白算法为什么正确ing) 2 主要是为了练习缩点和GAD 3 */ 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 ... 阅读全文
posted @ 2014-03-01 00:10 little_w 阅读(296) 评论(0) 推荐(0)