数学
QTY_
衡中信奥的渣
愿追求卓越,不断前行;只为爱&梦想,不曾停怯
展开
-
组合数+dp 运
问题 B: 运时间限制: 1 Sec 内存限制: 128 MB题目描述【问题背景】zhx 和妹子们玩数数游戏。【问题描述】仅包含4或7的数被称为幸运数。一个序列的子序列被定义为从序列中删去若干个数, 剩下的数组成的新序列。两个子序列被定义为不同的当且仅当其中的元素在原始序列中的下标的集合不相等。对于一个长度为 N的序列,共有 2^N个不同的子序列。( 包含一个空序原创 2017-08-05 11:45:20 · 344 阅读 · 0 评论 -
乱搞+STL平衡树 序列
考虑两种情况:1,q=1;2,q>1;O(N)枚举一遍即可。可以发现最长不会超过log。那么枚举起点的效率为N*logN?暴力可过?(其实这就是正解。。)只要枚举a[i]和a[i+1],算出最小公比。这里设k=a[i]/a[i+1] (假设a[i]>a[i+1])k=p1^x1*p2^x2…..。求出g=gcd(x1,x2….);最小q=p1^(x1/g)*p2^(x2/g)…..。 其实,已原创 2017-09-28 19:51:22 · 422 阅读 · 0 评论 -
数学+图论 建造游乐场
只要求出n个点能构成多少个不同的欧拉图即可。然后搞每两个点(对其增加或减少一条边)即有C(n,2)×f[n]个方案. 设n个点不重复的欧拉图个数为f[n],设所有点度数均为偶数(但不一定联通)的图的个数为g[n]. g[i]=2^C(i-1,2).刨去一个点,其他点对之间可连可不连一条边的总方案数。但方案中一定有些点的度数是奇数,而刚刚刨掉的点就派上了用场,那个点有唯一一种方案使图中所有度数为奇原创 2017-09-28 20:14:19 · 411 阅读 · 0 评论 -
数学 数论
题面去内网找。这题目。。。。 可以发现,如果数g不良,g*p^k一定也不良。所以搞个数组保留当前有哪几个数是良的。然后对这个数组进行拓展,就是枚举到下一个质数,把当前所有认为是良的数乘上当前质数的多少次方都加进这个数组里(边界就是乘到>m就停,但会炸long long,我傻写了个快乘)。 这样数组就拓展完了,之所以上面我说是”认为良的”数,就是在这里拓展完之后,得把所有不满足的删掉,我用了一个权原创 2017-10-17 21:15:59 · 291 阅读 · 0 评论 -
容斥原理 集合计数
问题 J: 集合计数 时间限制: 1 Sec 内存限制: 128 MB 题目描述 一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得 它们的交集的元素个数为K,求取法的方案数,答案模1000000007。(是质数喔~) 输入 一行两个整数N,K 输出 一行为答案。 样例输入 3 2 样例输出 6 提示 【样例说明】原创 2017-10-18 19:52:49 · 1130 阅读 · 0 评论 -
数学 喝喝喝
题面去内网找 其实也就是(a[i]-k)%a[j]==0; 但有两种特殊情况,1,去掉a[j]<=k的情况;2.a[i]==k,不满足的就是他后面第一个比k大的。 维护一个右端点的位置,就好了。#include <iostream>#include <cstring>#include <cstdio>#include <algorithm>#include <cstdlib>#inc原创 2017-10-15 18:30:59 · 337 阅读 · 0 评论 -
高精+卡特兰数 bzoj3907网格
问题 A: 网格 时间限制: 1 Sec 内存限制: 256 MB 题目描述 【问题描述】 某城市的街道呈网格状,左下角坐标为A(0, 0),右上角坐标为B(n, m),其中n >= m。现在从A(0, 0)点出发,只能沿着街道向正右方或者正上方行走,且不能经过图示中直线左上方的点,即任何途径的点(x, y)都要满足x >= y,请问在这些前提下,到达B(n, m)有多少种走法。 【输入原创 2017-10-01 16:45:16 · 364 阅读 · 0 评论 -
数学找规律 number
题干去内网找。。。 计算方法是可以通过找规律的方法找出来的,但是正规的式子是 f(i, k) = ∑(x=1,x<=mid(k,p))C(ax+1,k-x+1)-C(ax,k-x+1) 其中:p表示i在二进制下1的个数,ax表示二进制下第x高的1所在为代表的2的幂次。 可以证明出f(i.k)<=f(i+1,k).因此满足的答案连成一串。 特判k==1:此时有无限多。 其他只要二分出边界即原创 2017-10-03 11:08:01 · 542 阅读 · 0 评论 -
杂题 [Ceoi2010]A huge tower
问题 A: [Ceoi2010]A huge tower 时间限制: 1 Sec 内存限制: 259 MB 题目描述 有N(2<=N<=620000)快砖,要搭一个N层的塔,要求:如果砖A在砖B上面,那么A不能比B的长度+D要长。问有几种方法,输出 答案 mod 1000000009的值 输入 第一行: N,D 第二行: N个数,表示每块砖的长度。 输出 方案数。输出要mod1000原创 2017-10-19 15:50:07 · 853 阅读 · 0 评论 -
数学 gcd
题面请去内网找这题的正解用到了容斥原理,只要统计出(用一个桶)有某个数作为因数的数的个数。sum[i]表示有多少数有一个因数是i. 很明显这样就可以利用容斥原理了。而容斥系数就是莫比乌斯函数,线性筛即可。ans只要在原有基础上+=μ[i]*sum[i]。#pragma GCC optimize("O3")#include<cstdio>#include<cstdlib>#include<cs原创 2017-10-05 17:01:39 · 1052 阅读 · 0 评论 -
拓展lucas [HZOI 2016]艾米利亚的魔法
传送门这道题真令人发懵。。 首先要考虑如何降幂,利用这个式子 但我们发现φ(p)=27092310,是一个合数,所以在使用lucas定理时要把模数分解质因数,用中国剩余定理处理一下。 这题出的挺综合的。。。#pragma GCC optimize("O3")#include<cstdio>#include<cstdlib>#include<cstring>#include<iostre原创 2017-10-05 17:09:28 · 408 阅读 · 0 评论 -
欧拉函数+线段树 奇数国
问题 B: 奇数国 时间限制: 1 Sec 内存限制: 256 MB 提交: 82 解决: 44 [提交][状态][讨论版] 题目描述 在一片美丽的大陆上有100000个国家,记为1到100000。这里经济发达,有数不尽的账房,并且每个国家有一个银行。某大公司的领袖在这100000个银行开户时都存了3大洋,他惜财如命,因此会不时地派小弟GFS清点一些银行的存款或者让GFS改变某个银行的原创 2017-10-20 17:33:30 · 810 阅读 · 0 评论 -
矩阵乘+概率DP bzoj2676 Contra
问题 C: Contra 时间限制: 3 Sec 内存限制: 512 MB 提交: 133 解决: 33 [提交][状态][讨论版] 题目描述 偶然间,chnlich发现了他小时候玩过的一个游戏“魂斗罗”,于是决定怀旧。但是这是一个奇怪的魂斗罗MOD。 有N个关卡,初始有Q条命。 每通过一个关卡,会得到u分和1条命,生命上限为Q。 其中u=min(最近一次连续通过原创 2017-10-24 21:23:53 · 861 阅读 · 0 评论 -
找规律DP 七十和十七
题面去内网找~~ 这个一看真的不知道是个啥。 观察可知,如果想要处理第i位上的元素使之有序,必须要把前i-1位全部变成有序。我们再分开来想, 如果第i位是i,多移动0步, 第i位是1,多移动1步。 第i位是2,多移动2步:把2提前,再把1提前。 第i位是3,多移动4步:把3提前,重复之前两步。 ……. 也就是说,最后一位是i,移动2^(i-1)步。 因此,把前i为变成有序,要走(i原创 2017-10-15 17:23:28 · 454 阅读 · 0 评论 -
DP 路径
题面去内网找每一个坏点对答案的负贡献就是走到他的总方案数×他到(n,m)的总方案数。 计算方法:f[i]=C(x+y,x)-sigma f[j]*C(x1,y1) x1,y1就是i,j的x,y之差。而j的要求就是,xj<=xi,yj<=yi。 对坏点排个序,N^2搞即可。#include<cstdio>#include<cstring>#include<cstdlib>#include<原创 2017-10-15 19:02:37 · 437 阅读 · 0 评论 -
DP 长寿花
题面去内网找 设g[i][j]表示i个位置,用了j种颜色的方案数。因为a[i]max==5000,所以N^2预处理。 g[i][j]=g[i-1][j-1]j+g[i-1][j](j-1) 解释一下,前i-1个位置共用了j-1种颜色,那么最后一位用啥颜色都行,前i-1个位置把颜色用齐了,那最后一位就只有j-1种颜色可选了(颜色不与前一个重) f[i][j]表示到第i层,用了j种颜色。 f[原创 2017-10-15 18:57:34 · 332 阅读 · 0 评论 -
数学 方程的解
细节巨多的数学题。首先解出一组x最小的正整数解->ymax,同理求出ymin。就求出了解的个数。 那么我来说说巨多的细节。 1,解不出一组解来。 2,a=0||b=0时,若另一个变量最小解小于零,无解;若能解出,就有无数组。 3,a,b异号。#include<iostream>#include<cstdlib>#include<cstdio>#include<cstring>#inc原创 2017-09-11 11:38:24 · 473 阅读 · 0 评论 -
数学的坑,一点点来填
数学这个坑实在太大了,说白了是我太弱了 联赛考的:同余(解方程+逆元),欧拉函数,筛素数(这个过了),组合数,矩阵乘+快速幂,高斯消元 一点点把板子都总结一下。 同余方程: 首先是解线性同余的板子。 p*a+q*b=gcd(a,b)=gcd(b,a%b)=p*b+q*a%b=p*b+q*(a-a/b*b)=q*a+(p-a/b*q)*b; 根据原创 2017-08-09 21:22:31 · 570 阅读 · 5 评论 -
数学+暴搜 Phi的反函数
----------欧拉定理: phi(n)=(p1^x1)(p2^x2)… (1-1/p1) *(1/1/p2)…. 也就是说,phi(n)=p1^(x1-1)(p1-1) …… 而现在,我们知道了phi(x)=n,要求 x,而x=p1^x1*p2^x2 *… ----------根据常识(我现学的。。),最多分解出10个左右质因数。那就可以暴搜了。 把素数的原创 2017-09-17 17:25:35 · 748 阅读 · 0 评论 -
矩阵乘+坑 [NOI2011] 兔农
问题 C: 兔农时间限制: 1 Sec 内存限制: 256 MB题目描述农夫栋栋近年收入不景气,正在他发愁如何能多赚点钱时,他听到隔壁的小 朋友在讨论兔子繁殖的问题。 问题是这样的:第一个月初有一对刚出生的小兔子,经过两个月长大后,这 对兔子从第三个月开始,每个月初生一对小兔子。新出生的小兔子生长两个月后 又能每个月生出一对小兔子。问第 n 个月有多少只兔子? 聪明的你可原创 2017-08-05 11:30:13 · 350 阅读 · 0 评论 -
欧拉函数+矩阵快速幂 Password
问题 A: Password时间限制: 1 Sec 内存限制: 64 M题目描述Rivest是密码学专家。近日他正在研究一种数列E = {E[1],E[2],……,E[n]},且E[1] = E[2] = p(p为一个质数),E[i] = E[i-2]*E[i-1] (若2<i<=n)。例如{2,2,4,8,32,256,8192,……}就是p = 2的数列。原创 2017-07-30 19:13:00 · 304 阅读 · 0 评论 -
弱题
问题 D: 弱题时间限制: 1 Sec 内存限制: 128 MB题目描述有M个球,一开始每个球均有一个初始标号,标号范围为1~N且为整数,标号为i的球有ai个,并保证Σai = M。每次操作等概率取出一个球(即取出每个球的概率均为1/M),若这个球标号为k(k N),则将它重新标号为k + 1;若这个球标号为N,则将其重标号为1。(取出球后并不将其丢弃)现在你原创 2017-07-28 07:04:03 · 420 阅读 · 0 评论 -
bitset [HZOI 2016]动物城的鸳鸯蛋传说
传送门 神奇的bitset() 我太弱才学会bitset 。用来制造一个超大的二进制数存东西,对于这道题就是用来存那个数能被求出。bitset还用来加速求的过程,bitset|=bitset #include#include#include#include#include#include#define mod 10007#define ll原创 2017-07-26 17:51:10 · 298 阅读 · 0 评论 -
概率+逆元 书
问题 C: 书时间限制: 1 Sec 内存限制: 512 MB题目描述Hazel有n本书,编号1为n到 ,叠成一堆。当她每次抽出一本书的时候,上方的书会因重力而下落,这本被取出的书则会被放置在书堆顶。每次有pi的概率抽取编号为i的书。她每次抽书所消耗的体力与这本书在这堆中是第几本成正比。具体地,抽取堆顶的书所耗费体力值为1 ,抽取第二本耗费体力值为2 ,以此类推。现在 想原创 2017-08-07 18:03:31 · 439 阅读 · 0 评论 -
组合数 序列
问题 B: 序列时间限制: 1 Sec 内存限制: 256 MB题目描述输入5 32 4 2 3 4输出39提示 因为求的是子序列,不要求连续,所以点在集合里是可以随便选的,只要求出随便选的点的中的最大值即可。 好麻烦。。换个思路,枚举最大值,找有多少个区间满足它最大,乘上就是它对答案的贡献。 正解get 考试时1原创 2017-08-12 21:32:28 · 368 阅读 · 0 评论 -
排列 [HNOI2011]卡农
问题 A: [HNOI2011]卡农 时间限制: 1 Sec 内存限制: 128 MB 题目描述 共有2^n-1种片段组合方式。设数字i出现次数ai,选i个片段是合法总方案数为fi。 这里我们先按不同排列方式为不同情况。 那么对于A(2^n-1,i-1)就是i个位置上有i-1个位置上放上了片段,有两种情况, 1,这i-1个片段已满足要求,不合法。 2,这i-1个片段不满足要求,那原创 2017-08-27 12:27:16 · 334 阅读 · 0 评论 -
dfs+数学? 单
问题 B: 单 时间限制: 2 Sec 内存限制: 512 MB 题目描述 单车联通大街小巷.这就是出题人没有写题目背景的原因. 对于一棵树,认为每条边长度为1,每个点有一个权值a[i].dis(u,v)为点u到v的最短路径的边数.dis(u,u)=0.对每个点求出一个重要程度.点x的重要程度b[x]定义为其他点到这个点的距离乘上对应的点权再求和. 即:b[x]=a[1]*dis(1,x)原创 2017-09-03 21:50:03 · 336 阅读 · 0 评论 -
数学 随rand
问题 A: 随 时间限制: 2 Sec 内存限制: 512 MB 题目描述 给出n个正整数a1,a2…an和一个质数mod.一个变量x初始为1.进行m次操作.每次在n个数中随机选一个ai,然后x=x*ai%mod.问m次操作之后x的取值的期望. 答案一定可以表示成a/b的精确分数形式.a和b可能很大,所以只需要输出a*(b^(10^9+5))模10^9+7的结果. 输入 第一行三个整数原创 2017-09-03 21:31:42 · 353 阅读 · 0 评论 -
矩阵快速幂 [HNOI2011]数学作业
问题 G: [HNOI2011]数学作业 时间限制: 2 Sec 内存限制: 128 MB 好不容易有一道自己想出来的水题~~ 先说一下怎么构造矩阵吧, b: 10^? 1 1 0 1 1 0 0 1a: 0 0 0 0 0原创 2017-08-15 20:59:39 · 289 阅读 · 0 评论 -
gcd小规律 [Cqoi2014]数三角形
问题 D: [Cqoi2014]数三角形 时间限制: 1 Sec 内存限制: 128 MB 题目描述 给定一个nxm的网格,请计算三点都在格点上的三角形共有多少个。下图为4x4的网格上的一个三角形。 注意三角形的三点不能共线。 输入 输入一行,包含两个空格分隔的正整数m和n。 输出 输出一个正整数,为所求三角形数量。 样例输入 2 2 样例输出 76 数据范围 1<=m原创 2017-08-15 21:11:32 · 395 阅读 · 0 评论 -
拓展欧几里得 [Noi2002]Savage
对于一个野人,他(她?)所在的位置,(C[i]+x*p[i])%ans,是的,暴力枚举每一个ans,用拓展欧几里得求出每两个wildpeople(wildrage?)相遇的年份,如果小于最小的寿限(就是说他们在有生之年相遇了),那么就不符合情况。注意貌似有好多求同余的办法,貌似没几个是对的。。。但我保证我的是对的。。。#include<cstdio>#include<cstdlib>#inclu原创 2017-08-15 21:19:43 · 291 阅读 · 0 评论 -
欧拉函数+逆元 [Sdoi2008]沙拉公主的困惑
**[Sdoi2008]沙拉公主的困惑**时间限制: 1 Sec 内存限制: 259 MB 题目描述 大富翁国因为通货膨胀,以及假钞泛滥,政府决定推出一项新的政策:现有钞票编号范围为1到N的阶乘,但是,政府只发行编号与M!互质的钞票。房地产第一大户沙拉公主决定预测一下大富翁国现在所有真钞票的数量。现在,请你帮助沙拉公主解决这个问题,由于可能张数非常大,你只需计算出对R取模后的答案即可。R是一原创 2017-08-15 21:30:27 · 335 阅读 · 0 评论 -
数学 砍树
Σ (向上取整(a[i]/d)*d-a[i])<=k Σ(向上取整(a[i]/d))<=k+Σa[i](总称为C) Σ向上取整(a[i]/d)<=向下取整(C/d); f(d)=Σ向上取整(a[i]/d),g(d)=向下取整(C/d) 易知两个函数都是单调不上升的。具体来说都是分段的,那么对于g(d)的同一段上,段尾的d值一定优于段首值(f(d)也单调下降)。 那么枚举每一个段尾的d值,暴原创 2017-09-15 19:02:35 · 529 阅读 · 0 评论 -
矩阵快速幂 [bzoi4000]棋盘
bzoj4000传送门我一上来打了个傻乎乎的状压。。成功TLE 50%(不要阻止我装sb。。) 其实这道题叙述有点问题,给的那个3*p的矩阵,第一行是第0行。。。那么就发现转移只跟自己上一行的状态有关,但n太大了,而状态很少,少到能写进一个矩阵,快速幂get。 只要构造出f[i][j],i状态能转移到j状态,则f[i][j]=1; 把这个矩阵自乘n次即可。#include<cstdio>#i原创 2017-09-15 21:00:38 · 315 阅读 · 2 评论 -
异或高斯消元+暴搜 lights 燈
问题 F: [Usaco2009 Nov]lights 燈 时间限制: 1 Sec 内存限制: 64 MB 题目描述 贝希和她的闺密们在她们的牛棚中玩游戏。但是天不从人愿,突然,牛棚的电源跳闸了,所有的灯都被关闭了。贝希是一个很胆小的女生,在伸手不见拇指的无尽的黑暗中,她感到惊恐,痛苦与绝望。她希望您能够帮帮她,把所有的灯都给重新开起来!她才能继续快乐地跟她的闺密们继续玩游戏!牛棚中一共有N原创 2017-09-17 12:01:00 · 521 阅读 · 2 评论 -
矩阵乘 [Shoi2013]超级跳马
问题 F: [Shoi2013]超级跳马 时间限制: 1 Sec 内存限制: 256 MB 题目描述 现有一个n行m列的棋盘,一只马欲从棋盘的左上角跳到右下角。每一步它向右跳奇数列,且跳到本行或相邻行。跳越期间,马不能离开棋盘。例如,当n = 3, m = 10时,下图是一种可行的跳法。 试求跳法种数mod 30011。 输入 仅有一行,包含两个正整数n, m,表示棋盘的规模。原创 2017-10-26 07:25:19 · 581 阅读 · 0 评论