数论
文章平均质量分 53
yeh629
这个作者很懒,什么都没留下…
展开
-
[牛客网]15428n的约数(dfs+数论)
题目链接:https://ac.nowcoder.com/acm/problem/15428来源:牛客网题目描述t次询问,每次给你一个数n,求在[1,n]内约数个数最多的数的约数个数输入描述:第一行一个正整数t之后t行,每行一个正整数n输出描述:输出t行,每行一个整数,表示答案示例1输入513911316输出64166备注:对于100%的数据,t <= 500 , 1 <= n <= 100000.原创 2021-01-17 15:48:12 · 252 阅读 · 0 评论 -
UVA-11582 巨大的斐波那契数!(快速幂取模+打表)
题意:输入两个非负整数a、b和正整数n(0<=a,b<,1<=n<=1000),你的任务是计算f()除以n的余数。其中f(0)=f(1),且对于所有非负整数i,f(i+2)=f(i+1)+f(i)。思路:所有计算都是对n取模的,不妨设F(i)=f(i) mod n。不难发现,当二元组(F(i),F(i+1))出现重复时,整个序列就开始重复。例如,n=3,序...原创 2019-07-14 11:43:43 · 186 阅读 · 0 评论 -
UVA-1363 约瑟夫的数论问题
题意:输入正整数n和k(1<=n,k<=),计算分析:根据紫书,假设k/i的整数部分等于p,则k mod i=k-i*p。于是从i,i+1,i+2,······,j,k除以它们的商的整数部分都相同,则k除以它们的余数会是一个等差数列。这样,可以在枚举i时把它所在的等差数列之和累加到答案中。这需要计算满足[k/j]和[k/i]=p的最大j。当p=0时这样的j不存在,所...原创 2019-07-24 13:30:08 · 2019 阅读 · 0 评论 -
UVA-12169 不爽的裁判(扩展欧几里得算法)
题意:输入T,,,,······,,要求输出,,,······,。其中,。分析:可以暴力枚举a和b,但是效率不高。考虑使用扩展欧几里得算法,枚举a,计算出,进而根据计算出b。有了a,b,,就可以在O(T)时间内计算出整个序列。如果在计算过程中发现和输入矛盾,则这个a是非法的。那么如何根据扩展欧几里得算法计算出b呢?根据扩展欧几里得算法,g=gcd(a,b),方程a...原创 2019-07-25 11:10:57 · 145 阅读 · 0 评论 -
UVA-10375 选择与除法(唯一分解定理)
传送门:https://cn.vjudge.net/problem/UVA-10375题意:已知C(m,n)=m!/(n!(m-n)!),输入整数p,q,r,s(p>=q,r>=s,p,q,r,s<=10000),计算C(p,q)/C(r,s)。输入保证不超过,保留5位小数。分析:首先,求出10000以内的所有素数prime,然后用数组e表示当前结果的唯一分...原创 2019-09-10 11:27:16 · 101 阅读 · 0 评论 -
UVA-10791 最小公倍数的最小和(唯一分解定理)
传送门:https://cn.vjudge.net/problem/UVA-10791题意:输入整数n(1<=n<),求至少两个正整数n,使得它们的最小公倍数为n,且这些整数的和最小。输出最小的和。分析:用唯一分解定理即可。设唯一分解式为···,不难发现每个作为一个单独的整数时最优。如果就这样匆匆编写程序,可能会掉入陷阱。因为有好几个特殊情况要处理:1、n...原创 2019-09-10 16:34:25 · 174 阅读 · 0 评论 -
UVA-12716 GCD=XOR(枚举+预处理)
传送门:https://cn.vjudge.net/problem/UVA-12716题意:输入整数n(1<=n<=30000000),有多少对整数(a,b)满足:1<=b<=a<=n,且gcd(a,b)=a XOR b。例如n=7时,有4对:(3,2),(5,4),(6,4),(7,6)。分析:看上去很难,因为gcd和xor似乎没啥关联。不过x...原创 2019-09-10 17:10:53 · 124 阅读 · 0 评论 -
[牛客网]15068一个小问题(扩展中国剩余定理)
传送门:https://ac.nowcoder.com/acm/problem/15068题目描述:uu遇到了一个小问题,可是他不想答。你能替他解决这个问题吗?问题:给你k对a和r是否存在一个正整数x使每队a和r都满足:x mod a=r,求最小正解x或无解。输入描述:第一行是正整数k(k<=100000)接下来k行,每行有俩个正整数a,r(100000>a&...原创 2019-09-19 23:19:33 · 185 阅读 · 0 评论 -
[牛客网]14682约数个数的和(思维)
题意:给个n,求1到n的所有数的约数个数的和~分析:一开始以为是分别求1~n的每个数的约数(因数)个数,再求和。每个数的约数求法是,唯一分解定理,指数+1的乘积和就是约数个数。但是这样的做法超时了。尝试着打n<1000000的表,超过1000000的部分再单独去计算,还是超时。看了别人提交的代码才发现,正解是应该转换思维,1~n中有i这个因子的数有n/i个。代码:...原创 2019-09-19 23:25:48 · 479 阅读 · 2 评论