摘要: /*UVa10375 - Choose and divide --考查素数因子唯一分解定理。将x!分解成素数因子,然后再进行相乘约分。考虑效率问题:组合数公式进行化简: C(m,n)=m*(m-1)*...(m-n+1)/n!来计算. */ #define _CRT_SECURE_NO_DEPRECATE #include #include #include #include using na... 阅读全文
posted @ 2016-08-24 16:58 曹孟德 阅读(115) 评论(0) 推荐(0)
摘要: /*UVa12169 - Disgruntled Judge --a,b都在10000以内,这样可以枚举a的值,然后根据x1和x3计算出b的值,再遍历数组X判断他们是否合法 --很容易得到x3=(a*a*x1+(a+1)*b)%10001;变形一下可以得到:(a+1)*b+10001*k=x3-a*a*x1;直接利用扩展欧几里得算法 求解b在[0,10000]的唯一解。 */ #define _... 阅读全文
posted @ 2016-08-24 15:10 曹孟德 阅读(197) 评论(0) 推荐(0)
摘要: /*UVa11582 - Colossal Fibonacci Numbers! ---首先所有数都是对n取模运算的,设F[i]=f(i)%n,则当二元组(F[i],F[i]+1)重复时整个序列就会出现周期循环, ---对n取模可知最多有n种余数,而二元组合最多有n^2种,所以只需要最多打长度为n^2的表就可以找到周期T。 ---需要注意以下几点: 1)n==1时候需要特判,所有数都可以... 阅读全文
posted @ 2016-08-24 13:05 曹孟德 阅读(229) 评论(0) 推荐(0)
摘要: 取模公式: (a+b) mod n=((a mod n)+(b mod n))%n (a-b) mod n=(a mod n -b mod n +n)mod n a*b mod n =(a mod n)*(b mod n)mod n 1大整数取模:输入n,m求n%m,其中n<=10^1000000, 阅读全文
posted @ 2016-08-24 09:52 曹孟德 阅读(249) 评论(0) 推荐(0)