摘要: 今天写这个题时(UVA - 1363)看到约瑟夫环,学习一发 dp和数学就像一个东西,这个问题很有dp的味道 假设n=10,m=3; 0 1 2 3 4 5 6 7 8 9 变化之后 0 1 3 4 5 6 7 8 9 在变 7 8 0 1 2 3 4 5 6(0 1 2 3 4 5 6 7 8) 阅读全文
posted @ 2017-08-27 15:56 被咬过的馒头 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 这道题map的用法和读入的技巧需要记录 题意 九堆牌,每堆四张,每次消去表面两张相同的,看能否全部消除,求概率 map可以存一个数组状态 #include<cstdio> #include<string.h> #include<cmath> #include<vector> #include<map 阅读全文
posted @ 2017-08-18 11:12 被咬过的馒头 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 这是一道很基础的欧拉函数的题目 题意要求 (x,y) 互质 &&x<=n&&y<=n 求互质对数 可以运用容斥,求出 phi(n)=n(1-1/n1)(1-1/n2)......(1-1/nk); 因为(2,4) (4,2) 算两对,所以 答案为 2*f(n)+1; #include<stdio.h 阅读全文
posted @ 2017-08-14 20:08 被咬过的馒头 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 这是一道组合数学加质因子分解的题目 题意 给n个数两两相邻的数互相相加,最后剩下一个数,然后看每个数的大小是否能%m 利用c(n,m)=(n-m+1)/m*c(n,m-1); 由于一直乘下去会long long ,所以只需(n-m+1)/m进行质数分解 #include<stdio.h> #incl 阅读全文
posted @ 2017-08-14 15:16 被咬过的馒头 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 虽然这是一道水题,不过这道c(n,m)%mod 的模板值得记录 也可以用dp做,记录一个递推公式 c(n,m)=(c(n-1,m-1)+c(n-1,m))%mod; #include<cstdio> #include<cstring> #include<algorithm> #define LL l 阅读全文
posted @ 2017-08-14 15:06 被咬过的馒头 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 这是一道要转两次弯的数论题 题意 a^b=c=gcd(a,b),求在N以内有多少对这样的数 一开始我觉得可以枚举a c 求b,但是这样范围太大,担心会T,后来看了别人的题解,发现可以把c放在外圈,a放在内圈,这样可以减少a遍历的个数 类似于素数筛,这样每次枚举都会 有一次判断 gcd(a,b)=c? 阅读全文
posted @ 2017-08-14 15:02 被咬过的馒头 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 这道题算是一道到隐式搜索题,将每一个状态转化为二进制,但是如果用将每个状态建成一个图,空间需要太大,不可行,所以运用,priority_queue优化的dijkstra算法,只需对现有的边进行转换即可 注意一点,优先队列优先最大,但是题目是优先最小,因为这样才能最优 这个题建图很有特色 阅读全文
posted @ 2017-08-14 15:01 被咬过的馒头 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 1,通过url获取html 2,headers的改变 因为爬到第二面被挡住了,就加了改了个headers 3,正则表达式的匹配 根据这段信息得出re表达式 4,excel的写入 5,二级网页的爬取 因为薪资在另外一个网页所以加了一个爬取函数,结合了一点bs4库 6,效果图 7,总结 感受:从学pyt 阅读全文
posted @ 2017-08-14 15:00 被咬过的馒头 阅读(4760) 评论(0) 推荐(0) 编辑
摘要: 这是一道区间素数筛的题目,首先线性筛出1e6的素数,然后用每一个素数对区间内的数进行素数分解 公式:求某个数的因子个数,先进行素数分解x=p1^z1*p2^z2*p3^z3; 然后 sum=(z1+1)*(z2+1)*(z3+1); 1 #include <cstdio> 2 typedef lon 阅读全文
posted @ 2017-08-04 12:58 被咬过的馒头 阅读(98) 评论(0) 推荐(0) 编辑