随机化
文章平均质量分 91
里阿奴摩西
这个作者很懒,什么都没留下…
展开
-
[分块 随机化] BZOJ 2223 [Coci 2009]PATULJCI
不会主席树 分块加随机化卡时过但是另一道双倍经验就过不去啦233这个坑以后再填#include#include#include#includeusing namespace std; inline char nc(){ static char buf[100005],*p1=buf,*p2=buf; if (p1==p2) { p2=(p1=bu原创 2016-04-18 18:24:32 · 438 阅读 · 0 评论 -
[复数 解析几何 || 随机化] Ural 1046 Geometrical Dreams & POJ 2600 Geometrical dreams
这个可以先设出a1 然后 一圈递推出an+1 an+1==a1 解这个方程就好了这里用复数来实现 因为复数乘法是天然的旋转 复数旋转就是类似这样的东西以下来自 POJ Discusspoint getnp(point ori, point cen, double angle) //向量cen->ori绕cen旋转逆时针旋转angle弧度{ //复数平面向量旋转 poin原创 2016-12-04 20:48:44 · 411 阅读 · 0 评论 -
[Voronoi图 || 模拟退火 特判 || 圆的离散化] Ural 1520 Empire strikes back
论文:顾研《浅谈随机化思想在几何问题中的应用》与POJ 1379 Run Away差别不大以下摘录特判#include#include#include#include#includeusing namespace std;const int N=1005;const double eps=1e-5;const double PI=a原创 2016-12-02 21:07:59 · 488 阅读 · 0 评论 -
[随机化调整] Ural 1144 The Emperor's Riddle
论文:唐文斌--浅谈“调整”思想在信息学竞赛中的应用参考了 http://blog.csdn.net/nlj1999/article/details/50849965有N(N ≤ 10000)箱黄金,第i箱黄金的价值为A[i](0≤A[i]≤1000)。皇帝要将这N箱黄金赏给M(M≤1000)位将军,每个人可以获得任意箱,但是一箱黄金不能分开发,只能发一位将军。请找出一种分黄金原创 2016-12-07 20:04:23 · 327 阅读 · 0 评论 -
[随机化 || 黄金分割] HihoCoder #1461 Challenge 26 Rikka with Number
这个东西啊 逆过程是一个辗转相减 然后随机化以下最后状态另一个数就好了比赛的时候被windows的rand坑死 windows下RAND_MAX是32768被dls教导似乎windows下random_shuffle也有问题?要不是rand不出来 就拿到奖品了233#include#include#include#includeusing namespace std;i原创 2017-01-03 16:12:12 · 906 阅读 · 3 评论 -
[半平面交 随机增量法] BZOJ 2732 [HNOI2012]射箭
设抛物线为y=ax2+byy=ax^2+by 那么一个限制y1<=ax2+by<=y2y_1<=ax^2+by<=y_2 转化为b<=−ax+y2xb>=−ax+y1xb<=-ax+{y_2 \over x} \\ b>=-ax+{y_1 \over x} 然后就是一个关于a b的半平面交 这个直接上模板就行了 据说加强的数据是一些半平面交是点 直线 线段 射线 之类的边界情况 我lon原创 2017-02-14 10:40:55 · 742 阅读 · 0 评论 -
[构造 随机 生成树计数] UOJ #75 【UR #6】智商锁
题解大概意思是拆成4个12 瞎随机个千把个 找出四个使得abcd=K 这个meet in middle 就好了#include<cstdio>#include<cstdlib>#include<algorithm>using namespace std;typedef long long ll;const int P=998244353;const int N=15;inline ll原创 2017-04-07 20:44:23 · 384 阅读 · 0 评论 -
[构造 随机] Codeforces 720C Russian Code Cup 2016 - Finals C. Homework
我是dls的脑残粉 #include<cstdio>#include<cstdlib>#include<algorithm>#include<vector>#define pb push_backusing namespace std;const int N=100005;int n,m,K;int w[N];inline int count(){ int ret=0; f原创 2017-04-09 20:35:45 · 461 阅读 · 0 评论 -
[随机 Hash] Codeforces 799F Round #413 F. Beautiful fountains rows
就是给题目中给出的每个区间随一个值 然后判断一个区间是否合法 把区间内所有数xor和 再xor上 区间中出现过的所有数的xor和 为 0 前缀和统计下 本人脸黑 单hash交了好几发都是WA 迫不得已双hash#include<cstdio>#include<cstdlib>#include<algorithm>#include<vector>#include<map>#include原创 2017-05-20 07:29:01 · 870 阅读 · 0 评论 -
[最大似然估计 MLE] Codeforces 802DEF Helvetic Coding Contest 2017 D. E. F. Marmots
MLE最大似然估计可以通过观察数据来估计出随机的模型和参数 最大似然估计(Maximum likelihood estimation) Maximum likelihood estimation大概就是从所有可能的参数和模型中,选出概率最大的那一组模型,作为估计的模型和参数相关的还有一个最大后验估计(MAP),我没看过然后就很好写了D#include<cstdio>#include<cstdl原创 2017-06-17 18:00:06 · 792 阅读 · 0 评论 -
[最大团 随机化 || 二分图最大独立集] BZOJ 4080 [Wf2014]Sensor Network
最大团这种数据范围,标算只有被随机艹的节奏了吧正解 抄自这里 我们穷举两个点,这两点距离要小于限制 然后我们分别以这两个点为圆心,两点距离为半径画圆 圆圆相交的部分被两点练成线段划分成两部分,不难发现 每个部分内点点之间的距离是小于限制的,很明显想到二分图 对于上半部分与下半部分的两点,如果距离大于限制则连边 然后我们求最大点独立集即可#include<cstdi原创 2017-06-17 18:03:16 · 3077 阅读 · 0 评论 -
[几何 模拟退火 || 随机增量法] Codeforces 442E #253 (Div. 1) E. Gena and Second Distance
怎么都在理性愉悦啊 总算做到一道有点思路的题了官方题解 题解里说的是什么呢 我们先二分答案AnsAns 然后我们考虑AnsAns合法的条件是存在一个圆OO 他只包含其中一个特殊点 我们肯定可以挪动这个圆 使得有至少一个点在边界上 枚举点pp在边界上 那么圆心OO就在以pp为圆心的圆CC上 圆心OO合法的条件是不存在其他点到他的距离 ≤Ans\leq Ans 实际上就是C的圆周上的不被任原创 2017-03-14 11:20:08 · 1353 阅读 · 0 评论 -
[模拟退火 二分答案] BZOJ 1038 [ZJOI2008]瞭望塔
正解半平面交,%%% PoPoQQQ : http://blog.csdn.net/popoqqq/article/details/39340759"确定瞭望塔的高度的时候我们选择二分处理 对于二分的每一个值 我们把折线上的端点从左到右枚举 瞭望塔的塔尖到每个端点的连线必须从左到右逆时针顺序 否则就会被遮挡"#include#include#include#include#in原创 2016-04-16 13:17:12 · 656 阅读 · 0 评论 -
[三维线性规划 空间解析几何 随机增量法 || 单纯形] HDU 2979 Expensive Drink
论文:顾研《浅谈随机化思想在几何问题中的应用》以下摘录复杂度分析#include#include#include#includeusing namespace std;typedef pair abcd;typedef double Db;const Db oo=1e130;const int N=405;const Db eps=1e-8;原创 2016-12-02 21:12:38 · 1865 阅读 · 1 评论 -
[二分答案 随机增量法] BZOJ 2280 [Poi2011]Plot
狂T 只能去%Po姐 http://blog.csdn.net/popoqqq/article/details/45100989直接上二分是不可取的,因为我们要求m次,如果每次都验证一遍[1,n/2]直接就炸了我们可以这么搞首先判断[pos,pos+1-1]是否满足要求然后判断[pos,pos+2-1]是否满足要求然后判断[pos,pos+4-1原创 2016-07-12 19:39:18 · 701 阅读 · 0 评论 -
[随机化] HDU 5478 Can you find it
可以发现一个a对应一个b枚举a n=1时求出b然后随机化验证是否恒成立#include#include#includeusing namespace std;typedef long long ll;ll P,k1,k2,b1;inline ll Pow(ll a,int b){ ll ret=1; for (;b;b>>=1,a=a*a%P) if原创 2016-07-13 16:31:23 · 315 阅读 · 0 评论 -
[BSGS 矩阵 随机化] BZOJ 4128 Matrix
其实完全不必求逆矩阵判相同用了随机化#include#include#include#include#include#define cl(x) memset(x,0,sizeof(x))using namespace std;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p1==原创 2016-09-02 21:39:32 · 460 阅读 · 0 评论 -
[随机化 构造] Codeforces 717H Bubble Cup 9 - Finals H. Pokermon League challenge
随机化...不明觉厉#include#include#includeusing namespace std;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2=(p1=buf)+fread(buf,1,100000,stdin); if (p1==p2) return原创 2016-09-14 19:33:16 · 621 阅读 · 0 评论 -
[折半搜索 剪枝 随机化染色] 2015 计蒜之道 复赛 腾讯的星钻增值服务
题解里说的很详细 实在没有想到0.94的出错率 都可以随机化 不过在数据范围小 可以进行较多次随机的情况下 每次都出错的几率就很小了http://blog.jisuanke.com/?p=146先让我们来思考一下,如果这个问题被简化成“七种不同的星数分别为1, 2, 3, … 7”,这个问题应该如何解?由于背包的最大负重和代价都比较大,所以直接做 0/1 背包难度稍大。但是原创 2016-11-12 11:12:26 · 676 阅读 · 0 评论 -
[CDQ分治 并查集 || 随机化权值Xor] BZOJ 3237 [Ahoi2013]连通图
考虑CDQ分治 把这半边对后半边没有影响的操作做了 然后分治用并查集维护 开个栈暴力还原#include#includeusing namespace std;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2=(p1=buf)+fread(buf,1,100000,s原创 2016-05-08 12:56:31 · 911 阅读 · 0 评论 -
[完全平方数 随机化权值Xor] UR #14 A 最强跳蚤
把数质因数分解 完全平方数对应每个质数的指数是偶数两个点之间的路径是完全平方数 对应两个点到根路径的每个质数的指数奇偶性相同那么我们给每个质数一个[0,1然后一路xor然后hash或者map都行#include#include#include#includeusing namespace std;typedef unsigned long long u原创 2016-11-12 15:48:56 · 450 阅读 · 0 评论 -
[随机化 矩阵乘法] BZOJ 2396 神奇的矩阵 & 51Nod 1140 矩阵相乘结果的判断 & POJ 3318 Matrix Multiplication
不说了 经典#include#include#include#include#define cl(x) memset(x,0,sizeof(x))using namespace std;typedef long long ll;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p原创 2016-11-17 07:50:05 · 490 阅读 · 0 评论 -
[求解二次剩余 数论技巧 随机化] Ural 1132 Square Root
题目链接:http://acm.timus.ru/problem.aspx?space=1&num=1132以下来自:http://blog.csdn.net/acdreamers/article/details/10182281今天要讨论的问题是解方程,其中是奇质数。 引理: 证明:由费马小定理, 引理:方程有解当且原创 2016-11-06 20:33:58 · 656 阅读 · 0 评论 -
[随机增量法 最小圆覆盖] BZOJ 1366 [Balkan2002]Alien最小圆覆盖 & 1337 最小圆覆盖 & 2823 [AHOI2012]信号塔
期望O(n) 棒极了BZOJ 2823#include#include#include#include#define eps 1e-8#define X first#define Y secondusing namespace std;typedef pair Point;int n;Point P[1000005],C;double R;inline原创 2016-02-04 21:00:44 · 1239 阅读 · 2 评论 -
[模拟退火 || Voronoi图] POJ 1379 Run Away
经典的模拟退火骗分 唯一不爽的是调了一晚上参发现输出打错了#include#include#include#include#includeusing namespace std;const int N=1005;const double eps=1e-7;const double PI=acos(-1.0);inline int dcmp(double a,dou原创 2016-12-02 21:04:25 · 574 阅读 · 0 评论 -
[高斯消元 线性基 生成树 随机化权值Xor] BZOJ 3569 DZY Loves Chinese II
很好的建图姿势:我们找到这个图的任意一棵生成树 然后对于每条非树边将其的权值赋为一个随机数对于每条树边 我们将这条树边的权值设为所有覆盖这条树边的边权的异或和那么图不连通当且仅当删除一条树边和覆盖这条树边的所有边集 而由于刚才的处理一条树边和覆盖这条边的所有边集的异或和为零于是问题转化成了对于给定的k条边是否存在一个边权的异或和为零的子集 果断高斯消元 由于使用原创 2016-06-06 06:54:51 · 599 阅读 · 0 评论