随笔分类 - ACM_数学
摘要:题意:给你n(n<=100000)个正整数,求一个连续子序列使序列的所有元素的最大公约数与个数乘积最大 题解:我们知道一个原理就是对于n+1个数与n个数的最大公约数要么相等,要么减小并且减小至少一半(至少少了一个因子) 因此所有子串gcd的总种类数最多只有n*log(a(数字大小))个 我们枚举每个
阅读全文
摘要:题意:给你n、m(n,m<=200),问你有多少条非水平、非垂直的直线有多少条经过至少两个点 题解:我们需要枚举的是只画一条线的矩形,对于大小a*b的矩形必须保证gcd(a,b)=1才能不重复 接着对于每个矩形可以放的位置有(n-a)(m-b)个,但是如果有矩形在某个矩形的左上方就会再次重复 因此只
阅读全文
摘要:题意:给你a、b(a<=2000,b<=2000000),问你从原点可以看到范围在(-a<=x<=a,-b<=y<=b)内整数点的个数 题解:首先只需要计算第一象限的点得到答案为ans,再计算ans*4+4就好了;原因是四象限一样,接着上下左右各加上一个点 在第一象限上就是求x属于[1,a]y属于[
阅读全文
摘要:题意:给你n、k,计算∑(1<=i<=n)(k%i) 题解:由于k固定所以可以通过打表找到某些余数是等差数列,令p=k/i,所以k/(i+1)也等于p时 计算:k%(i+1) = k-k/(i+1)*(i+1) = k- p*(i+1) =k-p*i-p=k%i-p 所以我们计算时只要k/i ==
阅读全文
摘要:题意:有n种纸片无限张,随机抽取,问平均情况下抽多少张可以保证抽中所有类型的纸片 题解:假设自己手上有k张,抽中已经抽过的概率为 s=k/n;那抽中下一张没被抽过的纸片概率为 (再抽一张中,两张中,三张中...)(1-s)*(1+2*s+3*s^3+...)=(1-s)*E s*E = (s+2*s
阅读全文
摘要:题意:两个箱子,每个箱子有n颗糖,每次有p的概率拿1号箱子的一颗糖出来(有1-p的概率拿2号箱子的一颗糖出来),问当打开某个箱子为空的时候,另一个箱子的期望糖的数量是多少 题解:枚举另一个箱子的糖的数量乘以可能性就是答案,一部分是:C(i,n+i) *p^(n+1) *(1-p)^i *(n-i)(
阅读全文
摘要:题意:给你一串只有‘(’与‘)’的字符串,问你多少对括号,括号一定是左边一半的‘(’,右边一半是‘)’ )(()() 答案是:6 题解:枚举每个‘(’,此时设左括号左边有n个‘(’,它右边有m个‘)’,当我们设定此时的‘(’一定选定时,就不会重复了 然后对于每个位置我们就可以推出这样的公式:注意‘)
阅读全文
摘要:题意:有n个人去商场,其中每个人都有一个打算买东西的概率P[i]。问你最后r个人买了东西的情况下每个人买东西的概率 题解:一脸蒙蔽的题,之前的概率与之后的概率不一样??? 看了白书上的题解才知道了,其实就是条件概率的应用 我们假设:E为有r个人买东西的事件,Ei表示第i个人买了东西的事件,则我们需要
阅读全文
摘要:题意:求出[1,n]中满足gcd(a,b)=a xor b,且1<=a<=b<=n的对数 题解:首先a xor b = c,则a xor c = b,而b是a的约数,则可以使用素数筛选法的方法使用O(nlogn)枚举a与c 接着gcd需要O(logn)的时间,时间为O(n(logn)^2) 但是我们
阅读全文
摘要:欧几里得算法: 解释:给定两个自然数,求出两个自然数的最大公约数。也叫——辗转相除法 过程:1.给定两个自然数a、b 2.a == 0 时 gcd(a,b)= b;b == 0 时 gcd(a,b) = a 3.当a,b都大于0时有 gcd(a,b)= gcd(b,a%b),减小a,b继续计算 证明
阅读全文
摘要:很简单的一个题的,结果后台数据有误,自己又太傻卡了3个小时。。。 题意:给你一串数a再给你一些区间(lef,rig),求出a[lef]%a[lef+1]...%a[rig] 题解:我们可以发现数字a对数字b取模时:如果a<b,则等于原数,否则a会变小至少一半。就是说a最多成功取模(log2 a)次,
阅读全文