![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ACM_数学
文章平均质量分 83
PoemK
这个作者很懒,什么都没留下…
展开
-
卡特兰数和斯特林数(转载)加深理解
卡特兰数,第一类斯特林数,第二类斯特林数Catalan数 C(n),第一类Stirling数 s(p,k),第二类Stirling数 S(p,k)[卡特兰数,第一类斯特林数,第二类斯特林数]一.Catalan数 C(n) C(n) 的一个形象的例子是:2*n个括号,其中有n个前括号'('和n个后括号')',排成一列,满足所有括号都匹配的排列数。转载 2016-11-01 18:54:10 · 470 阅读 · 0 评论 -
hdu 1695 GCD 容斥原理
题意:给出区间[a,b],[c,d]和数k,(最大均为十万),在[a,b]中选一个数x,[c,d]中选一个数y,是的gcd(x,y)=k。问题转化为[1,b/k],和[1,d/k]中选两数x,y,使得gcd(x,y)==1。令b'=b/k,d'=d/kGCDTime Limit: 6000/3000 MS (Java/Others)原创 2016-07-20 08:12:57 · 416 阅读 · 0 评论 -
HDU 1438 钥匙计数之一 递推+组合 简洁的做法
钥匙计数之一Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 1662 Accepted Submission(s): 723Problem Description一把锁匙有N个槽,槽深为1,2,3,4。原创 2016-08-05 09:58:41 · 553 阅读 · 0 评论 -
uvaLive 2701 Find The Multiple
题意:给出n解法:只用找一个最小即可。贪心+bfs。数太大,却不用大数,因为只要求是n的倍数,完全可以存储模n后的余数。因为用了bfs,所以如果一个余数访问过一次,那么再次访问一定不再加入队列,因为这显然不是最优解。记录路径输出。#include#include#includeusing namespace std;int n;原创 2016-07-20 09:23:08 · 349 阅读 · 0 评论 -
poj 1681 Painter's Problem 高斯消元 枚举自由变元
Painter's ProblemTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 5598 Accepted: 2705DescriptionThere is a square wall which is made of n*n small squar原创 2016-07-07 20:36:53 · 508 阅读 · 0 评论 -
poj 1222 EXTENDED LIGHTS OUT 高斯消元 异或方程
EXTENDED LIGHTS OUTTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 8915 Accepted: 5781DescriptionIn an extended version of the game Lights Out, is a p原创 2016-07-07 20:15:30 · 305 阅读 · 0 评论 -
hdu 1521 排列组合 指数型母函数
从n种物品中选出m个物品,求排列数。每个物品均有相应数目。由于要考虑同类物品排列时的重复情况,必须用指数型母函数。排列组合Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 3477 Accepted Su原创 2016-06-20 21:45:48 · 347 阅读 · 0 评论 -
hdu 1023 Train Problem II 卡特兰数
Train Problem IITime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 7977 Accepted Submission(s): 4278Problem DescriptionAs we all原创 2016-06-18 00:58:08 · 388 阅读 · 0 评论 -
uva 861 Little Bishops 组合数学 (布棋)
题意:给出n*n大小的棋盘,黑白两色相间,要在其中放m个相,问使之互不攻击的方案种数。= ∑(白格子放k个,并且黑格子放m-k个的种数)分别考虑黑白格子,对于棋盘进行变形,使得不能在斜角位置的条件 变为 不能在同行同列。白格子的变形方法是:不考虑黑格子,将剩下的白格子顺时针旋转45度,然后压缩。(使得图形变为倒置的Ferres图像)。原创 2016-07-02 04:18:22 · 528 阅读 · 0 评论 -
hdu 2049 错排问题 (简单)
不容易系列之(4)——考新郎Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 31657 Accepted Submission(s): 11514Problem Description国庆期间,省城HZ原创 2016-07-02 01:59:03 · 279 阅读 · 0 评论 -
hdu 2082 找单词 母函数
找单词Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5938 Accepted Submission(s): 4169Problem Description假设有x1个字母A, x2个字母B,....原创 2016-06-13 19:38:38 · 338 阅读 · 0 评论 -
POJ 2084 Game of Connections 递推/卡特兰数
给出连续的2*n个点,序号分别为1,2,3...2*n,放在一个圆周上。之后分成n组,每组两个点相连。要求所有直线互不相交的连线方法种数。1.很容易想到递推。ans[x]=ans[x].add(ans[le].multiply(ans[ri]) );2.这个题就是卡特兰数直接利用公式这个题目要用大数。令h(0)=1,h(1)=原创 2016-06-06 14:02:27 · 362 阅读 · 0 评论 -
poj 1833 排列
排列Time Limit: 1000MS Memory Limit: 30000KTotal Submissions: 18585 Accepted: 7304Description题目描述: 大家知道,给出正整数n,则1到n这n个数可以构成n!种排列,把这些排列按照从小到大的顺序(字典顺序)列出,如n=3时,列出原创 2016-06-07 09:13:32 · 300 阅读 · 0 评论 -
poj 1496 Word Index 计数/组合数学
给出一些串的排列规则,输入一个串,要你输出它的序数。解:先统计长度比它小的串个数,用组合。再统计长度相等并且序数比它小的个数,扫描+组合。Word IndexTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 4955 Accepted: 2815原创 2016-06-12 12:58:29 · 811 阅读 · 0 评论 -
poj 1942 Paths on a Grid 水组合
题意:给定一个矩形网格的长m和高n,其中m和n都是unsigned int32类型,一格代表一个单位,就是一步,求从左下角到右上角有多少种走法,每步只能向上或者向右走显然答案=C(n+m,m)=C(n+m,n)。一共走n+m步,在其中选m步向右走即可。Paths on a GridTime Limit: 1000MS Memo原创 2016-06-11 19:09:12 · 261 阅读 · 0 评论 -
poj 1019 Number Sequence 第i位上的数字 (组合数学)
Number SequenceTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 37699 Accepted: 10890DescriptionA single positive integer i is given. Write a program t原创 2016-06-11 00:23:11 · 405 阅读 · 0 评论 -
POJ 1850 Code 组合数 编码
题意:输出某个str字符串在字典中的位置。规定长度小的字符串排在长度大的字符串前面,并且输入的字符串的字符必须是升序排列。不降序列是非法字符串。由于字典是从a=1开始的,因此str的位置值就是 在str前面所有字符串的个数 +1对于输入的英文字符串:1.先判断是否合法,即是否能进行code2.然后就是要求 编码小于它的个数+1原创 2016-06-09 09:32:09 · 410 阅读 · 0 评论 -
poj 3252 Round Numbers 二进制+组合
输入两个十进制正整数a和b,求闭区间 [a ,b] 内有多少个Round number所谓的Round Number就是把一个十进制数转换为一个无符号二进制数,若该二进制数中0的个数大于等于1的个数,则它就是一个Round Number原创 2016-06-08 10:05:48 · 352 阅读 · 0 评论 -
hdu 2841 Visible Trees 容斥,分解质因数
给出一个n*m的格子,每个格子里种有一棵树,让你站在格子外的(0,0)处,问你能看到多少棵树(前面的树会被后面的遮住)?(1<=n,m<=1e5)原创 2016-08-07 10:46:52 · 298 阅读 · 0 评论 -
hdu 5894 hannnnah_j’s Biological Test 排列组合
题目题意:现在 m个考生人需要坐在有n个座位的圆桌上。你需要安排位置,使得任意两个考生之间相距至少k个位置。桌子有编号,考生a和b交换位置视作一种方案,问有多少方案,mod 1e9+7。(0 < m < n < 1e6, 0 < k < 1000)解法:首先必须有n>=m+k*m,否则答案是0。现在先考虑m个人的相对关系(即不考虑座位编号和人对应,先只考虑人与人间的间隔,即位置分配), 先在n个原创 2016-09-18 21:35:44 · 596 阅读 · 0 评论 -
CF 559C. Gerald and Giant Chess 组合数学+DP
题目链接题意:给出一个h*w的棋盘(h,w<=1e5),其中有n个位置不能走(n<=2000),现在要从左上角走到右下角,每步只能向下或者向右走一步。问有多少种走法?右下角保证可以走到。解法:对于右走x步,下走y步的无限制方案数是C(x+y,y),可以记为C(x,y)。 首先将最右下角也作为一个不能走的位置,最后要求出到达这个位置的合法路径数dp[n]。 对所有不能走的位置排序,先比较行,再原创 2016-09-22 10:02:25 · 749 阅读 · 0 评论 -
hdu 5117 Fluorescent 数学展开式+dp
题目题意:给出一些个开关(m<=50),每个开关控制一些灯(一共有n个灯<=50),一旦按了开关,它所控制的灯都会切换一次状态,最开始所有灯都是灭的。现在每个开关最多按一次,求2m2^m种情况下的E[x3]E[x^3],x为点亮的灯数。解:求E[x3]E[x^3],其中x=x1+x2+x3x=x1+x2+x3, 则x3=(x1+x2+x3+...+xn)∗(x1+x2+x3+...+xn)∗(x1原创 2016-09-21 16:33:30 · 452 阅读 · 0 评论 -
HYSBZ 1444 有趣的游戏 AC自动机+概率DP+高斯消元
1444: [Jsoi2009]有趣的游戏Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 986 Solved: 325[Submit][Status][Discuss]DescriptionInput注意 是0OutputSample InputSample Out原创 2016-08-12 15:50:47 · 417 阅读 · 0 评论 -
hdu 5731 Solid Dominoes Tilings 插头dp+容斥原理
题意:给出一个n*m大小的棋盘,需要你用1*2的砖铺满它,砖不可重叠,并且要求棋盘上没有行分割线或列分割线。输出方法种数。需要取模。原创 2016-07-23 21:26:31 · 1373 阅读 · 3 评论 -
hdu 1028 Ignatius and the Princess III 整数拆分 母函数/dp
将一个正整数n拆成若干正整数,使和为n,求拆分方法数。12=1+1+10和12=1+10+1 是一种拆分方法。Ignatius and the Princess IIITime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total S原创 2016-06-14 20:28:56 · 455 阅读 · 0 评论 -
hdu 5396 Expression 区间DP+排列组合 2015 Multi-University Training Contest 9
ExpressionTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 453 Accepted Submission(s): 264Problem DescriptionTeacher Mai has n原创 2015-08-20 08:04:02 · 480 阅读 · 0 评论 -
hdu 5389 Zero Escape DP+数学规律 给出证明 2015 Multi-University Training Contest 8
Zero EscapeTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 1008 Accepted Submission(s): 504Problem DescriptionZero Escape,原创 2015-08-16 15:57:10 · 614 阅读 · 0 评论 -
poj 1995 Matrix Power Series 二分+矩阵快速幂
Matrix Power SeriesTime Limit: 3000MS Memory Limit: 131072KTotal Submissions: 21337 Accepted: 8944DescriptionGiven a n × n matrix A and a positive integer k,原创 2016-10-16 20:50:01 · 346 阅读 · 0 评论 -
2014 AnShan Coprime (hdu 5072) 容斥原理
CoprimeTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 2407 Accepted Submission(s): 916Problem DescriptionThere are n peopl原创 2016-09-30 21:24:04 · 289 阅读 · 0 评论 -
hdu 1573 X问题 水题 一元线性同余方程组
X问题Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5487 Accepted Submission(s): 1856Problem Description求在小于等于N的正整数中有多少个X满足:X原创 2016-10-16 15:24:46 · 346 阅读 · 0 评论 -
poj 2115 C Looooops 拓欧
C LooooopsTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 24339 Accepted: 6782DescriptionA Compiler Mystery: We are given a C-language style for loop原创 2016-10-15 21:48:40 · 397 阅读 · 0 评论 -
poj 2891 Strange Way to Express Integers 一元线性同余方程组
Strange Way to Express IntegersTime Limit: 1000MS Memory Limit: 131072KTotal Submissions: 14552 Accepted: 4764DescriptionElina is reading a book written by Ru原创 2016-10-15 21:11:00 · 276 阅读 · 0 评论 -
2014 xi'an Problem F. Color (Gym 100548F) 容斥原理
题意:给出n个需要涂色的格子排成一列,有m种颜色,需要从中选出k种颜色,使得任意两个相邻格子不同色。(n\m解法:容斥原理,首先能想到计算C(m,k),之后考虑的问题是现在用恰好k种颜色去涂色。首先k*pow(k-1,n)表示的是至多用k种颜色的种数,然后如果想得到恰好用k种颜色的方案数,就用容斥原理,奇加偶减。#include#include原创 2016-09-30 13:36:26 · 517 阅读 · 0 评论 -
hdu 5584 LCM Walk
题意:给出一个整点(x,y) (x>0&&y>0) ,每次可以走到(x,x+lcm(x,y))或者( y+lcm(x,y) ,y)。现在给定终点,问有多少个点可能是出发点。LCM WalkTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total原创 2016-10-13 16:13:35 · 465 阅读 · 0 评论 -
CF 7C. Line 拓展欧几里得
题目链接分析:裸题#include<cstdio>#include<string>#include<cstring>#include<iostream>#include<cmath>#include<algorithm>#include<vector>using namespace std;#define all(x) (x).begin(), (x).end()#define fo原创 2016-10-13 16:38:29 · 336 阅读 · 0 评论 -
hdu 5514 Frogs 容斥
FrogsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1777 Accepted Submission(s): 587Problem DescriptionThere are m stones原创 2016-10-10 00:14:17 · 480 阅读 · 0 评论 -
hdu 5512 Pagodas gcd()
PagodasTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1137 Accepted Submission(s): 808Problem Descriptionn pagodas were st原创 2016-10-09 16:27:58 · 451 阅读 · 0 评论 -
2013 Asia - Dhaka GCD XOR 数学,gcd ,异或 (uvaLive 6657 - GCD XOR)
想不出来真失败,总结一下这个题目主要是在这几点上:1.很容易想到枚举a,b,然后判断__gcd(a,b)是否等于a^b。也很容易发现这样做是完全不行的。(1/1)2.分析出gcd和xor其实并没有太大关系(1/1)3.然后分析出gcd和xor并没有关系,而且时间不够,那么就要充分利用xor或者gcd的性质。(2/2)4.鉴于1和3,那么我们可以换个枚举的方式,枚举a和a的因子,原创 2016-04-08 14:56:43 · 370 阅读 · 0 评论 -
poj 2689 Prime Distance 筛法/二次筛法/区间素数
完全可以用二次筛法来做,虽然我只是一遍就筛出来,第一次,先找出[1,sqrt(INT_MAX+0.5)]间的素数。第二遍利用第一遍找出的素数找出[L,U]内的素数,映射到一个数组里面,。具体的处理方法有:开一个数组装下该区间内所有的素数,或者表示某个值是否为素数。#include#include#include#include#include#原创 2016-03-15 13:33:48 · 515 阅读 · 0 评论 -
uva 11426 - GCD - Extreme (II) 欧拉函数
题目:https://uva.onlinejudge.org/external/114/11426.pdf#include#include#include#include#include#include#include#include#include#include#include#includetypedef long long ll;/原创 2015-09-22 17:52:36 · 362 阅读 · 0 评论