上一页 1 ··· 3 4 5 6 7 8 9 10 11 12 下一页

2016年7月25日

HDU 5017 Ellipsoid 模拟退火

摘要: 说是找椭球面上的 到原点距离最近的点。 感觉像是有个单调性,然后,点的范围是正负100以内。 第一次学习模拟退火,觉得就是个搜索,在现在确定的一个方向中去搜索。当然,方向越多搜索越精确,但是时间会变慢,这种概率算法还是不要轻易写的为好...... 阅读全文

posted @ 2016-07-25 12:11 very_czy 阅读(196) 评论(0) 推荐(0) 编辑

RQNOJ 83 魔兽世界

摘要: 从左上角到右下角,问最少几步能到。 有传送门:大写字母之间可以互相传送。 坑点是,有一个点从一个跳到另一个,那么不能标记进入的门。 也就是说只要标记道德那个地方就行了。 阅读全文

posted @ 2016-07-25 12:04 very_czy 阅读(186) 评论(0) 推荐(0) 编辑

2016年7月22日

codeforces 696B puzzle

摘要: 求随机dfs序的期望。 我们来看到一个点之后是什么情况。 一个点p有很多儿子,其中一个是x; 如果要求x的期望,那么先看: 如果从父亲直接到这个点,那就是父亲的期望加一; 如果还走其他的点,那么最后一步肯定还是要加一(因为你总要花一步从别的店跳过来),所以无论怎样都要父亲的期望加一。剩下来再看,如果 阅读全文

posted @ 2016-07-22 20:07 very_czy 阅读(212) 评论(0) 推荐(0) 编辑

codeforces 698B fix a tree 时间戳

摘要: 把一个父亲数组变成棵树的最小改动。 一想就只有环或者森林,用时间戳,每次爆搜就行,要么剖环,要么连树。 阅读全文

posted @ 2016-07-22 15:16 very_czy 阅读(164) 评论(0) 推荐(0) 编辑

并查集 压缩路径

摘要: int find(int x) { int k, j, r; r = x; while(r != parent[r]) //查找跟节点 r = parent[r]; //找到跟节点,用r记录下 k = x; while(k != r) //非递归路径压缩操作 { ... 阅读全文

posted @ 2016-07-22 14:07 very_czy 阅读(215) 评论(0) 推荐(0) 编辑

2016年7月20日

HDU 5727 Necklace 二分图匈牙利最大匹配,

摘要: 给你阴阳球各n个,某些阳球只要周围有一个阴球,就会变暗,问最后至少要变暗多少个。 看了题解,说是全排列阴球,因为成环,所以就能变成8!复杂度,就能跑了。 然后每种情况,如果一个阳球碰上周围两个阴球都不变暗,那么久能放在这个位置,此时的最大匹配就是这种方案,最大可以放,并且不变暗的,个数。拿n一减,完 阅读全文

posted @ 2016-07-20 22:54 very_czy 阅读(287) 评论(0) 推荐(0) 编辑

HDU 5726 GCD 求给定序列中与查询段相等的GCD个数

摘要: 一上来RMQ,以便于把查询等东西都弄成logn的。然后预处理,因为GCD有递减趋势,并且每次改变下降都减少至少一半,所以很快就会到1,剩下的直接加进去;如果很慢到1,那么中途相等的gcd就可以二分。此复杂度为2logn,暴力起始位置,每次向左移都是logn,所以复杂度是2nlogn。 下面上代码 阅读全文

posted @ 2016-07-20 13:32 very_czy 阅读(236) 评论(0) 推荐(0) 编辑

HDU 5733 求四面体 内心 外心 内接圆圆心 外接圆圆心

摘要: 给四个点让求内接圆心。 就求呗~ 内心公式: 设四面体A1A2A3A4的顶点Ai多对的侧面积为Si(i=1,2,3,4),顶点Ai的坐标为(xi,yi,zi)(i=1,2,3,4),四面体内心I的坐标为(xi,yi,zi),则 x1=(s1*x1+s2*x2+s3*x3+s4*x4)/(s1+s2+ 阅读全文

posted @ 2016-07-20 13:24 very_czy 阅读(1156) 评论(0) 推荐(1) 编辑

2016年7月5日

lightoj 1208

摘要: 给组数,给边数给一个点, 给一堆边。 求包围的最小周长。 思路清晰,每条边只加一次,为逆时针缠绕。 然后化边为点,边到边如果左旋就有一个初始距离,然后求floyed。 lightoj 的>>不能连着写,不然就会挂。 阅读全文

posted @ 2016-07-05 22:59 very_czy 阅读(203) 评论(0) 推荐(0) 编辑

lightoj 1320

摘要: 输入: 给组数; 给边数N,给X最大,给Y最大, 给N条边,X1Y1,X2Y2; 问区域内有几个块。 思路清晰,对于每条边,有自己的影响,影响就是和之前的边有多少交点。有一个交点加一块,自身是一块。 但是有个技巧,就是浮点数的点,怎么存; 发现直线相交的交点是 X=(l2.b*l1.c - l1.b 阅读全文

posted @ 2016-07-05 22:00 very_czy 阅读(141) 评论(0) 推荐(0) 编辑

上一页 1 ··· 3 4 5 6 7 8 9 10 11 12 下一页

导航