![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数学其他
文章平均质量分 65
里阿奴摩西
这个作者很懒,什么都没留下…
展开
-
[数学 FFT] Codechef July Challenge 2017 #APRPS Irrational Root
跟 51Nod 1356 代数数的次数 是一样的 不过这里都是质数 也就是就是 2n2^n 关键是输方案 这个不一定有二次剩余感谢sxt 一个一个数加进答案 转化成 已知F(x)F(x),求F(x+a√)F(x+\sqrt a)和F(x−a√)F(x-\sqrt a)的系数 这个推一下就是一个FFT拷了myy的板子 自己的太慢了QAQ#include<cstdio>#include<cs原创 2017-07-24 10:18:34 · 694 阅读 · 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 · 876 阅读 · 3 评论 -
[斐波那契 数学技巧] 洛谷 P1306 斐波那契公约数
gcd(fib[n],fib[m])==fib[gcd(n,m)];#include#include#includeusing namespace std;typedef long long ll;namespace F{ struct Matrix{ ll a,b,c,d; Matrix(ll a=0,ll b=0,ll c=0,ll d=原创 2016-11-14 18:30:24 · 455 阅读 · 0 评论 -
[斐波那契拆分 乱搞 数学] 51Nod 1350 斐波那契表示
可以证明每次选最大的fib数减去一定是最优解之一然后预处理G[fib[i]-1] 额 代码横跨noip前后 意识模糊 一片mess#include#include#include#includeusing namespace std;typedef long long ll;ll fib[205]; int maxn;ll F[205];inline原创 2016-11-23 16:59:52 · 611 阅读 · 0 评论 -
[数学 几何] 51Nod 1512 向量翻转 & Codeforces #79 (Div. 1 Only) 101C Vectors
可以发现ABC其实都可以旋转 转来转去无非是变幻下坐标系那么我们设D为C旋转后的向量 B0B1B2B3为旋转后的xiangliang那么就是判断 A+xC+yD=B0/B1/B2/B3 是否有整数解 注意些细节#include#include#include#define X first#define Y secondusing namespace std;type原创 2016-11-25 20:25:40 · 657 阅读 · 0 评论 -
[五边形数定理 DP] 51Nod 1259 整数划分 V2 & HDU 4651 Partition
详见:http://blog.csdn.net/acdreamers/article/details/12259815#include#include#includeusing namespace std; typedef long long ll; const int N=50005; const int P=1e9+7;ll F[N],f[N];原创 2016-11-22 15:41:10 · 526 阅读 · 0 评论 -
[乱搞 分类讨论 数学] 51Nod 1131 覆盖数字的数量
可以知道[a,b]能覆盖的区间是[a,b],[2a,2b],[3a,3b]...[ka,kb]...等等,先求出这些区间何时交在一起即k*b>=(k+1)*a-1,然后再细致一点分类讨论即可。#include#include#includeusing namespace std;typedef long long ll;inline char nc(){ static原创 2016-11-22 14:16:46 · 537 阅读 · 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 · 402 阅读 · 0 评论 -
[黄金分割比] 黄金分割法求单峰函数最值
论文:杨思雨--美,无处不在——浅谈“黄金分割”和信息学的联系#include#include#include#includeusing namespace std;const double eps=1e-4;const double phi=(sqrt(5.0)-1)/2;double A,B,C;double L,R;int cnt=0;i原创 2016-12-03 10:59:43 · 1212 阅读 · 0 评论 -
[威佐夫博弈 黄金分割比 数学技巧] POJ 1067 取石子游戏 & HDU 1527 取石子游戏
论文:杨思雨--美,无处不在——浅谈“黄金分割”和信息学的联系以下摘录证明#include#include#include#includeusing namespace std;const double phi=(1+sqrt(5.0))/2.0;int main(){ freopen("t.in","r",std原创 2016-12-03 10:57:16 · 895 阅读 · 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 · 1824 阅读 · 1 评论 -
[数学] NOI1995 极值问题
m、n为整数,且满足下列两个条件:①m、n∈{1,2,…,K },(1≤K≤ 109)②(n2-mn-m2)2=1编一程序,由键盘输入K,求一组满足上述两个条件的m、n,并且使m2+n2的值最大。例如,若K=1995,则m=987,n=1597,则m、n满足条件,且可使m2+n2的值最大。打表可知满足fib数列K1原创 2016-12-11 19:53:13 · 1017 阅读 · 0 评论 -
[类欧几里得算法 数学技巧] 51Nod 1132 覆盖数字的数量 V2 & Ural 1797 Summit Online Judge. Version 2
传送门:http://acm.timus.ru/problem.aspx?space=1&num=1797讨论帖 膜拜各路神犇:http://www.51nod.com/question/index.html#!questionId=683分类讨论 n>=x*y 以及 n#include#include#includeusing namespace std;typede原创 2016-11-25 20:32:10 · 803 阅读 · 0 评论 -
[贪心 数学] 完全平方数最大
原贴:http://blog.csdn.net/cax1165/article/details/53052917从1 − N中找一些数乘起来使得答案是一个完全平方数,求这个完全平方数最大可能是多少。对于n的阶乘质因数分解后如果一个素数次数是奇数那么不选这个素数 否则选这个素数 这样就能保证最大并且不会出现一个数的一部分选一部分不选的情况 因为不选原创 2016-11-14 18:38:10 · 570 阅读 · 0 评论 -
[特征根法 || 高斯消元] 51Nod 1653 算法马拉松19 E 夹克赌坊
这道题先是很happy的打了个高斯消元#include#include#include#include#define cl(x) memset(x,0,sizeof(x))using namespace std;typedef long double ld;const int N=200005;const ld eps=1e-15;int S,W,A,n;ld原创 2016-10-31 18:18:05 · 587 阅读 · 0 评论 -
[生成树 MatrixTree定理] BZOJ 1016 [JSOI2008]最小生成树计数
很久以前做的题了看到zhanghanchong神犇在做有两个结论最小生成树的两个性质:1、边权相等的边的个数一定。2、做完边权为w的所有边时,图的连通性相同。有了这两个结论 每种权值 个数少可以爆搜hzwer的代码#include#include#include#include#define mod 31011using names原创 2016-08-23 18:32:23 · 483 阅读 · 0 评论 -
[最小乘积生成树 分治] BZOJ 2395 [Balkan 2011]Timeismoney
丢下题解就走:http://www.cnblogs.com/autsky-jadek/p/3959446.html贴吧的讨论:http://tieba.baidu.com/p/3357839800#include#include#include#include#define cl(x) memset(x,0,sizeof(x))using namespace std;t原创 2016-07-04 18:37:09 · 621 阅读 · 0 评论 -
[数学 树 || 环套树] BZOJ 3528 [Zjoi2014]星系调查
瞎扯的题目 直接上大神题解吧 #include<cstdio>#include<cstdlib>#include<algorithm>#include<cmath>using namespace std;typedef long long ll;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (原创 2017-02-01 13:33:27 · 574 阅读 · 0 评论 -
[数学 二分图匹配] SRM 456 div1 FunctionalEquation
本来想自己再推一下的,但是退役了也就弃坑了 未经允许的搬了搬题人的题解// BEGIN CUT HERE #include<conio.h>#include<sstream>// END CUT HERE #include<cstdio>#include<cstdlib>#include<cstring>#include<cmath>#include<iostream>#in原创 2017-07-23 13:41:16 · 655 阅读 · 0 评论 -
[拉格朗日乘数法 二分] BZOJ 2876 [Noi2012]骑行川藏
拉格朗日乘数法 ACdreamers [Math & Algorithm] 拉格朗日乘数法首先那个能量肯定是要花完的,就变成一个限制了,乘上拉格朗日乘子,求偏导,变成了 2λkix2i(xi−vi)=12\lambda k_ix_i^2(x_i-v_i)=1 ∑kisi(xi−vi)2=E\sum k_is_i(x_i-v_i)^2=E发现 x≥vx\ge v 且 x2(x−v)x^2(x-v原创 2017-06-17 18:21:25 · 694 阅读 · 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 · 767 阅读 · 0 评论 -
[IMO原题] BZOJ 4915 简单的数字题
第52届IMO试题解答 #include<iostream>#include<algorithm>using namespace std;int main(){ long long l,r; cin>>l>>r; cout<<4<<endl<<max(r/11-l+1,0LL)+max(r/29-l+1,0LL); return 0;}原创 2017-06-01 21:28:24 · 1022 阅读 · 0 评论 -
[二进制分组 dsu on tree 二次函数] Codechef KILLER Painting Tree
首先我们可以列一个dp 按深度 fuf_u表示链剖分中选择了从uu到当前深度的祖先这条链所能得到的最小答案 我们发现这条链的贡献是一个关于祖先深度二次函数 具体形式我忘了 而其他贡献则是一路上来兄弟子树中的最大值累加 这样就很明确了 是要求对每一个点维护一个二次函数 还要资瓷子树加 查询子树中x=kx=k最小值首先询问一坨二次函数最大值 有一个经典做法来自 BZOJ2646 我们可以维护nn原创 2017-05-19 21:20:12 · 520 阅读 · 0 评论 -
[莫比乌斯反演 伯努利数] BZOJ 2627 JZPKIL
ydc的题解 orzz 因为这道题才去学习了伯努利数 可以看这里#include<cstdio>#include<cstdlib>#include<algorithm>using namespace std;typedef long long ll;namespace RHO{ int prime[9]={2,3,5,7,11,13,17,19,23}; unsigned long原创 2017-04-02 13:36:12 · 820 阅读 · 0 评论 -
[伯努利数] 51Nod 1258 序列求和 V4
自然数幂和的求法有很多 大概有由二项式定理得递推式 拉格朗日插值法&牛顿插值法第一类斯特林数伯努利数wiki传送门 ACdreamer的blog伯努利数有两种B+B^+和B−B^- 唯一的争议就在B1B_1上 因为 对于n>1n>1有B2n+1=0B_{2n+1}=0 其实这不是什么大问题 一般个人习惯用B−B^- 以下不注明BB都表示B−B^-然后我就只会伯努利数最裸的应用了原创 2017-04-02 13:32:00 · 2205 阅读 · 0 评论 -
[Bell数] HDU 4767 Bell & BZOJ 3501 PA2008 Cliquers Strike Back
ACdreamer大牛的详细介绍Bell数 大概是这样的有递推公式 可以分治FFT求 生成函数很优美 可以用多项式科技求 是第二类斯特林数的和 可以用Bell三角形预处理 神奇的同余性质 可以计算对小质数取模的值 也可以CRT合并 这里的p是不大于100的素数 模素数p的周期 这里就是求bell模一个数的值 可以发现 95041567=31∗37∗41∗43∗4795041567 = 31*原创 2017-02-24 01:36:00 · 613 阅读 · 0 评论 -
[高中数学联赛题] Codeforces Gym 101173 CERC 16 E. Easy Equation
首先(0,1,k)(0,1,k)是个解 然后用主元法 a2−k(b+c)a+b2+c2–kbc−1=0a^2 - k(b+c)a +b^2 + c^2 – kbc -1=0 可得如果(a,b,c)(a,b,c)为解,那么(k(b+c)−a,b,c)(k(b+c)-a,b,c)也为方程的解 直接大力bfs 其实你需要高超的高精度技巧 Python大法好 第一次知道原来set跑的这么快fro原创 2017-03-30 08:07:47 · 1679 阅读 · 0 评论 -
[可图性判定 Havel-Hakimi定理 构造] Codeforces Gym 100269 NEERC 13 Northern K. Kids in a Friendly Class
黑点和白点的个数可以从小到大枚举 黑白点之间的连边是显然的 那么对于白点或黑点内部 我们就需要连边使得每个点度数相同每次选两个剩余度最大的点相连是错误的 反例 6 2那么应该怎么连 需要Havel-Hakimi定理 由非负数组成的非增序列s:d1,d2,⋯,dn(n≥2,d1≥1)s:d_1,d_2,\cdots,d_n(n\geq2,d1\geq1)是可图的,当仅当序列s1:d2−1,d3原创 2017-04-07 06:55:05 · 1015 阅读 · 0 评论 -
[第二类斯特林数 组合计数] 省选模拟赛 2 B. 两弹一星 missile
题目大意 一张无向图的权值定义为 xkx^k,其中 xx 是图中结构为树的连通块个数。给定 nn, kk, 求出所有 nn 个点带标号的的简单无向图的权值和,对 998244353998244353 取模。令 xix_i 表示树联通块 i 是否存在 , 图的权值为 (∑xi)m(\sum x_i)^m。对于某 kk 个联通块,如果同时出现,那么贡献为 S(m,k)∗k!S(m, k) * k!原创 2017-03-18 21:01:59 · 1069 阅读 · 0 评论 -
[构造 || 斐波那契分解] BZOJ 2912 [Poi1997]Jump
论文:何林--信息学中的守恒法构造就不摘了 摘录fib分解的做法#include#include#include#include#includeusing namespace std;typedef long long ll;const int con=100000000;class Int{public:long long a[1000];原创 2016-12-09 13:18:19 · 804 阅读 · 0 评论 -
[牛顿法 || 二分] BZOJ 1213 [HNOI2004]高精度开根 & 51Nod 1166 大数开平方
可以看贴吧的讨论:http://tieba.baidu.com/p/2873435742牛顿法 %%%hqztrueimport sysm=int(input())n=int(input())if n==0: print 0 sys.exit()_n=n;len=0while _n>0: _n/=10;len+=1base=300wei=len/mno原创 2016-07-08 19:50:24 · 1427 阅读 · 0 评论 -
[区间GCD预处理 树状数组 离线] HDU 5869 Different GCD Subarray Query
首先确定一个右端点 向左做后缀gcd的值是不超过log的 因为gcd必然递减 每次至少除以2 那么可以对每个右端点预处理出来 然后要求区间不同的gcd个数 这里要用到1878: [SDOI2009]HH的项链的技巧 用树状数组离线处理 按右端点的顺序处理询问 令pos[x]等于x这个值出现的最靠右的位置 显然这里是对计算贡献最有利的 然后用树状数组维护下 对于某个位置 有多少个pos的取值原创 2017-02-01 22:26:46 · 369 阅读 · 0 评论 -
[数学] 51Nod 1622 算法马拉松19 C 集合对
运用数学知识可知A交B的所有子集皆可#include#include#includeusing namespace std;typedef long long ll;const ll P=1e9+7;ll a,b,c;inline ll Pow(ll a,ll b){ ll ret=1; for (;b;b>>=1,a=a*a%P) if (b&1)原创 2016-10-31 18:12:14 · 322 阅读 · 0 评论 -
[数学 二项式定理 快速幂] BZOJ 3157 && BZOJ 3516 && BZOJ 4126 国王奇遇记
膜拜神犇n+e:http://trinkle.is-programmer.com/2015/6/30/the-adventures-of-the-king.100058.html本题按时间复杂度的不同共有三种解法。只会O(m2)的方法#include#include#include#define P 1000000007using namespace s原创 2016-04-20 16:13:03 · 813 阅读 · 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 · 439 阅读 · 0 评论 -
[扫描线 树状数组 随机数列 优化] BZOJ 2221 [Jsoi2009]面试的考验
%%%JSB#include#include#includeusing namespace std;typedef long long ll;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2=(p1=buf)+fread(buf,1,100000,stdin); if (p1=原创 2016-06-27 11:48:52 · 951 阅读 · 0 评论 -
[期望 数学] BZOJ 2720 [Violet 5]列队春游
枚举每个小朋友i 位置x 贡献 j可以发现 x 对 求答案无用 可以优化到O(n2)懒得优化啦#include#include#includeusing namespace std;typedef long double ld; inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p原创 2016-06-27 11:51:35 · 957 阅读 · 0 评论 -
[数学 高精度] HDU 5241 Friends
很可怕的韦恩图 可以发现每种语言是独立的 且状态只有01一种语言满足条件的方案是x 那么n种就是n次幂通过样例看出x=32#include#include#include#include#include#include#include#includeusing namespace std;class Int{ #define BASE 100000000原创 2016-07-13 16:29:20 · 345 阅读 · 0 评论 -
[DP Euler Zigzag Number] BZOJ 1925 [Sdoi2010]地精部落
Euler Zigzag Number什么的太神啦推导:http://blog.csdn.net/vmurder/article/details/44604275#include#include#includeusing namespace std;const int N=5005;int n,P;int f[2][N];int main(){原创 2016-06-06 06:51:06 · 925 阅读 · 0 评论 -
[二分答案 物理 数学] BZOJ 3695 滑行
一直知道OI会出数学题 没想到还有物理题 物理差成渣什么光路最速原理折射角sin之比等于速度比什么的知道这个然后二分答案就好了#include#include#include#define PI acos(-1.0)#define eps 1e-12using namespace std;inline char nc(){ static char原创 2016-05-08 12:59:26 · 599 阅读 · 0 评论