随笔分类 -  数论

摘要:题意:求杨辉三角第n + 1行中(1 <= n <= 10^9)不能被p(1 <= p <= 1000且 p 为素数)整除的数的个数。 不太会找规律,后来啃题解才慢慢一点点懂的,先说说Lucas定理. 一、了解定理: Lucas定理: 前提:若 p 为素数; 结论:若求C(n, m) % p,则 将 阅读全文
posted @ 2016-11-05 14:35 TianTengtt 阅读(274) 评论(0) 推荐(0)
摘要:题意:求如下函数产生的值的前 n 项的标准差(1 <= n <= 10000000,0 <= seed < 2^64). 写出方差的式子,然后展开分子所有平方项,合并,化简之后,方差即为 ∑(xi^2) / n + (∑(xi) / n) ^ 2 标准差开根号即可。 复杂度为O(n),3s之内可以承 阅读全文
posted @ 2016-11-03 23:38 TianTengtt 阅读(341) 评论(0) 推荐(0)
摘要:题意:给定在32位带符号整数范围内的n,求n/1+n/2+n/3+n/4+……+n/n = ? 因为损失精度,所以算出来的有些连续的项是相同的数值,故想办法找出对于某个值,哪一段范围均是这个值。 详见代码注释 阅读全文
posted @ 2016-10-27 23:45 TianTengtt 阅读(143) 评论(0) 推荐(0)
摘要:题意:给定一系列的虫洞,每个虫洞都有自己的x,y,z,当你的 id 对 x 取余后结果落在[ y,z ]区间内,则会被吸引,被两个或两个以上的虫洞吸引会有危险,求能否宇宙飞船能否起飞。 枚举每两个虫洞,有 id - k1 * x1 = u id - k2 * x2 = v 其中k1与k2分别为 id 阅读全文
posted @ 2016-10-25 11:22 TianTengtt 阅读(467) 评论(0) 推荐(0)
摘要:题意:给定n个数(a1,a2,a3…… )和k,对于未知数x,假如你已知x mod ai(1 <= i <= n),能否求出x mod k的值? 中国剩余定理: 若m1,m2,m3……mn两两互质,有方程组 k ≡ a1(mod m1) k ≡ a2(mod m2) k ≡ a3(mod m3) … 阅读全文
posted @ 2016-10-25 11:06 TianTengtt 阅读(229) 评论(0) 推荐(0)
摘要:题意:H数:4*n+1 (n = 0,1,2……) H素数:不是1,也不能写成两个不是1的H数的乘积 H-半素数:能写成两个H素数的乘积 给定一个H数h(h <= 1000001),输出1~h内的H-半素数个数 先求出所有的H素数,与筛选素数打表类似。然后对于每个h,暴力统计个数即可。 阅读全文
posted @ 2016-10-25 11:05 TianTengtt 阅读(158) 评论(0) 推荐(0)
摘要:题意:给定n(1 <= n <= 10^9)和k(1 <= k <= 100),从1~n中选尽量多的整数,使的任意两个整数之间都不是k倍的关系。 容斥原理,(例如n = 20,k = 3,答案为16个数(1,9,2,18,4,12,5,15,7,8,10,11,13,14,16,17,19,20)) 阅读全文
posted @ 2016-10-25 11:03 TianTengtt 阅读(178) 评论(0) 推荐(0)
摘要:题意:1 <= x, y <= n,可以根据 f(x0, y0)得知 f(k * x0, k * y0) ,问最简要得知所有的f(x,y)至少需要统计多少x与y? 可以看出,实质就是与,n以内有多少对互素的元素,利用欧拉函数即可。 阅读全文
posted @ 2016-10-25 10:56 TianTengtt 阅读(119) 评论(0) 推荐(0)
摘要:题意:求至少两个整数的最小公倍数是n,且保证和最小 先把n分解为多项质因子,然后为了保证最小公倍数为n,将相同的质因子合并,再相加即可 特别的,为1时,1*1=2,答案为1+1=2 为素数时,为素数*1=素数,答案为素数+1 阅读全文
posted @ 2016-10-25 10:38 TianTengtt 阅读(142) 评论(0) 推荐(0)
摘要:f(a^b)对n求余后会有周期出现,只需找出它等同于周期中的哪一项即可。最好提前打表。 阅读全文
posted @ 2016-10-25 10:33 TianTengtt 阅读(175) 评论(0) 推荐(0)
摘要:直接打表素数后查找即可。 阅读全文
posted @ 2016-10-25 10:31 TianTengtt 阅读(235) 评论(0) 推荐(0)