随笔分类 -  数论

摘要:例1:http://lx.lanqiao.cn/problem.page?gpid=T444 蓝桥杯 问题描述 给定一个长度为N的数列,A1, A2, ... AN,如果其中一段连续的子序列Ai, Ai+1, ... Aj(i <= j)之和是K的倍数,我们就称这个区间[i, j]是K倍区间。 你能 阅读全文
posted @ 2018-02-19 21:55 Somnuspoppy 阅读(887) 评论(0) 推荐(0)
摘要:题意:有n只青蛙,每只青蛙的弹跳能力为ai,他们都从0出发,绕着m个石头围成的圈子跳跃,石头编号为0~m-1,问能被跳到的石头编号之和。 分析: 1、弹跳能力为ai的青蛙,可以跳到的石头编号是gcd(ai, m)的倍数。 2、枚举m的因子,若某个青蛙可以弹跳的石头编号中有该因子,那证明编号为这个因子 阅读全文
posted @ 2017-10-19 12:57 Somnuspoppy 阅读(203) 评论(0) 推荐(0)
摘要:题意:两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面。它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止。可是它们出发之前忘记了一件很重要的事情,既没有问清楚对方的特征,也没有约定见面的具体位置。不过青蛙们都是很乐观的,它们觉得只要一直朝着某个方向跳下去,总能 阅读全文
posted @ 2017-10-13 21:53 Somnuspoppy 阅读(258) 评论(0) 推荐(0)
摘要:题意:有三个集合,分别含有a、b、c个点,要求给这些点连线,也可以全都不连,每两点距离为1,在同一集合的两点最短距离至少为3的条件下,问有多少种连接方案。 分析: 1、先研究两个集合,若每两个集合都保证满足条件,那最后结果一定满足条件。 2、两个集合间若要最短距离至少为3,那每个集合中的点只能同时与 阅读全文
posted @ 2017-10-12 19:43 Somnuspoppy 阅读(430) 评论(0) 推荐(0)
摘要:题意:已知F0 = 0,F1 = 1,Fn = Fn - 1 + Fn - 2(n >= 2), 且若n=Fa1+Fa2+...+Fak where 0≤a1≤a2≤⋯≤a,n为正数,则n为mjf-good,否则为mjf-bad,给定k,求最小的mjf-bad。 分析:找规律可得,F2*k+3 - 阅读全文
posted @ 2017-09-13 21:16 Somnuspoppy 阅读(190) 评论(0) 推荐(0)
摘要:题意:,给定N,求G。 分析: 1、G = f(2) + f(3) + ... + f(n).其中,f(n) = gcd(1, n) + gcd(2, n) + ... + gcd(n - 1, n). 2、设g(n, i)表示gcd(x, n) = i的个数(x < n),则f(n) = sum{ 阅读全文
posted @ 2017-08-13 15:04 Somnuspoppy 阅读(260) 评论(0) 推荐(0)
摘要:题意:已知N*N的矩阵A,输出矩阵A + A2 + A3 + . . . + Ak,每个元素只输出最后一个数字。 分析: A + A2 + A3 + . . . + An可整理为下式, 从而可以用log2(n)的复杂度算出结果。 注意:输入时把矩阵A的每个元素对10取余,因为若不处理,会导致k为1的 阅读全文
posted @ 2017-07-30 22:22 Somnuspoppy 阅读(210) 评论(0) 推荐(0)
摘要:题意:已知f(0) = a,f(1) = b,f(n) = f(n − 1) + f(n − 2), n > 1,求f(n)的后m位数。 分析:n最大为109,矩阵快速幂求解,复杂度log2(109)。 阅读全文
posted @ 2017-07-27 21:58 Somnuspoppy 阅读(242) 评论(0) 推荐(0)
摘要:题意:在N*M个方格中放K个点,要求第一行,第一列,最后一行,最后一列必须放,问有多少种方法。 分析: 1、集合A,B,C,D分别代表第一行,第一列,最后一行,最后一列放。 则这四行必须放=随便放C[N * M][K] - 至少有一行没放,即ABCD=随便放-A的补集 ∪ B的补集 ∪ C的补集 ∪ 阅读全文
posted @ 2017-07-27 20:41 Somnuspoppy 阅读(189) 评论(0) 推荐(0)
摘要:题意:有n个人,已知每个人买东西的概率,求在已知r个人买了东西的条件下每个人买东西的概率。 分析:二进制枚举个数为r的子集,按定义求即可。 阅读全文
posted @ 2017-07-26 20:32 Somnuspoppy 阅读(226) 评论(0) 推荐(0)
摘要:题意:求nk的前三位和后三位。 分析: 1、后三位快速幂取模,注意不足三位补前导零。 补前导零:假如nk为1234005,快速幂取模后,得到的数是5,因此输出要补前导零。 2、前三位: 令n=10a,则nk=10ak=10x+y,x为ak的整数部分,y为ak的小数部分。 eg:n=19,k=4,则n 阅读全文
posted @ 2017-07-23 20:05 Somnuspoppy 阅读(183) 评论(0) 推荐(0)
摘要:题意:将一个数x拆成a1+a2+a3+……,ai不等于aj,求最大的a1*a2*a3*……。 分析: 1、预处理前缀和前缀积,因为拆成1对乘积没有贡献,所以从2开始拆起。 2、找到一个id,使得2+3+4+……+id - 1(sum[id-1]) < x < 2+3+4+……+id(sum[id)。 阅读全文
posted @ 2017-05-18 23:20 Somnuspoppy 阅读(296) 评论(0) 推荐(0)
摘要:题意:已知有n个男生,m个女生。现在要选t个人,要求有至少4个男生,至少1个女生,求有多少种选法。 分析: 1、展开,将分子中的m!与分母中n!相约,即可推出函数C。 2、递推求组合数。 高中学的组合数公式:C(n, m) = C(n - 1, m - 1) + C(n - 1, m)。 注意m < 阅读全文
posted @ 2017-02-24 15:40 Somnuspoppy 阅读(299) 评论(0) 推荐(0)
摘要:题意:所有形如4n+1(n为非负整数)的数叫H数。定义1是唯一的单位H数,H素数是指本身不是1,且不能写成两个不是1的H数的乘积。H-半素数是指能写成两个H素数的乘积的H数(这两个数可以相同也可以不同)。输入一个H数h(h <=1000001),输出1~h之间有多少个H-半素数。 分析: 1、筛选法 阅读全文
posted @ 2017-02-12 20:02 Somnuspoppy 阅读(474) 评论(0) 推荐(0)
摘要:题意:输入两个整数L,U(1<=L<=U<=109,U-L<=10000),统计区间[L,U]的整数中哪一个的正约数最多。如果有多个,输出最小值。 分析: 1、求一个数的约数,相当于分解质因子。 2、例如60 = 2 * 2 * 3 * 5。对于2来说,可选0个2,1个2,2个2,有3种情况,同理对 阅读全文
posted @ 2017-02-12 15:22 Somnuspoppy 阅读(233) 评论(0) 推荐(1)
摘要:题意:输入两个正整数L、U(L<=U<1012),统计区间[L,U]的整数中有多少个数满足:它本身不是素数,但只有一个素因子。 分析: 1、满足条件的数是素数的倍数。 2、枚举所有的素数,以及其倍数,将满足条件且小于等于n的个数计算出来,solve(u) - solve(l - 1)即可。 阅读全文
posted @ 2017-02-12 13:54 Somnuspoppy 阅读(346) 评论(0) 推荐(0)
摘要:题意:第一象限里有一个角,把n(n <= 10)个给定边长的正方形摆在这个角里(角度任意),使得阴影部分面积尽量大。 分析:当n个正方形的对角线在一条直线上时,阴影部分面积最大。 1、通过给定的xa,ya,xb,yb,可求k1,k2。 2、当n个正方形的对角线在一条直线上时,设A(x1,k1*x1) 阅读全文
posted @ 2017-02-11 17:42 Somnuspoppy 阅读(312) 评论(0) 推荐(0)
摘要:题意:输入整数n(1<=n<=30000000),有多少对整数(a, b)满足:1<=b<=a<=n,且gcd(a,b)=a XOR b。 分析:因为c是a的约数,所以枚举c,a = k*c,通过a-c求b,并通过a^b=c来验证。 阅读全文
posted @ 2017-02-10 20:54 Somnuspoppy 阅读(391) 评论(0) 推荐(0)
摘要:题意:输入整数n(1<=n<231),求至少两个正整数,使得它们的最小公倍数为n,且这些整数的和最小。输出最小的和。 分析: 1、将n分解为a1p1*a2p2……,每个aipi作为一个单独的整数时最优。 2、n为1时,len==0;n为素数时,len==1。 阅读全文
posted @ 2017-02-10 19:58 Somnuspoppy 阅读(352) 评论(0) 推荐(0)
摘要:题意:在[-a, a]*[-b, b]区域内随机取一个点P,求以(0, 0)和P为对角线的长方形面积大于S的概率(a,b>0, S>=0)。 分析: 1、若长方形面积>S,则选取的P(x,y)满足xy>S,xy=S是双曲线,P取双曲线上方,[-a, a]*[-b, b]区域内的某点则满足条件。 2、 阅读全文
posted @ 2017-02-10 15:10 Somnuspoppy 阅读(227) 评论(0) 推荐(0)