随笔分类 -  算法—数学

摘要:题意:计算0 9的第1000000大的字典序 注意: 标记的数组位置和具体的值恰好相反 求第n个状态则需要转换n 1次 阅读全文
posted @ 2017-11-17 00:48 799 阅读(147) 评论(0) 推荐(0) 编辑
摘要:1.大整数加法 题意:计算两个数得和 2.大整数乘法 题意:计算2 ^1000 各位数字累加和 include using namespace std; const int N = 1e5 + 5; const int VAL = 1000; int32_t main() { char a[N],b 阅读全文
posted @ 2017-11-16 20:10 799 阅读(335) 评论(0) 推荐(0) 编辑
摘要:题意:求解因子个数大于500的三角数 方法一: 约数个数定理: 时间复杂度:O(N^3) 方法二: 要点1:线性筛的应用——用24 和 2 标记48的约数个数 48 = 2^4 3^1 num[48] = (4+1) 2=10 24 = 2^3 3^1 num[24] =(3+1) 2= 8 模拟: 阅读全文
posted @ 2017-11-13 01:33 799 阅读(259) 评论(0) 推荐(0) 编辑
摘要:代码段1:计算约数定理中素数的幂数 分析:第19行代码:保证prime[j] 阅读全文
posted @ 2017-11-12 21:04 799 阅读(153) 评论(0) 推荐(0) 编辑
摘要:记忆化:就是将中间的运算结果保存起来,避免多次计算 阅读全文
posted @ 2017-11-12 15:31 799 阅读(151) 评论(0) 推荐(0) 编辑
摘要:逆运算 所谓逆运算,就是把c以及a、b中的一个当作已知,把a、b中的另一个当做所求的运算 加法不是减法的逆运算,乘法不是除法的逆运算 例子1: 例子2: 例子3: 例子4: 阅读全文
posted @ 2017-11-12 14:42 799 阅读(7801) 评论(0) 推荐(0) 编辑
摘要:方法一: 暴力 时间复杂度O(n sqrt(n)) include int is_prime(int x) { for (int i=2; i i using namespace std; define MAX_N 1000 int prime[MAX_N + 5] = {0}; int main( 阅读全文
posted @ 2017-11-06 00:11 799 阅读(236) 评论(0) 推荐(0) 编辑
摘要:证明: gcd (a,b) == gcd (b,a%b) yu = a % b = a k b (k 为 a/b 向下取整) 假设最大公约数为d,上式同时除以 d yu / d = a / d + k b / d 等号左侧为整数 ,同样右侧也是整数 ,证明yu 也能被d 整除 整体递归过程: gcd 阅读全文
posted @ 2017-11-06 00:09 799 阅读(225) 评论(0) 推荐(0) 编辑
摘要:今天做题的时候遇到了卡特兰数,就好好的系统的学习一下吧。 参考博客:http://www.cnblogs.com/code-painter/p/4417354.html 一、关于卡特兰数 卡特兰数是一种经典的组合数,经常出现在各种计算中,其前几项为 : 1, 2, 5, 14, 42, 132, 4 阅读全文
posted @ 2017-10-15 20:13 799 阅读(295) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示