上进小青年

导航

2016年9月23日

HDU5878

摘要: http://acm.hdu.edu.cn/showproblem.php?pid=5878 给出你一个数字,让你求出大于这个数字n并且是形如2^a*3^b*5^c*7^d的最小的数; 就是用打表法求出所有的数,然后通过二分来查找,否则就会超时 有一点是童鞋们需要注意的,就是在文件中自定义函数的po 阅读全文

posted @ 2016-09-23 20:51 上进小青年 阅读(233) 评论(0) 推荐(0) 编辑

HDU5900

摘要: http://acm.hdu.edu.cn/showproblem.php?pid=5900 就是给出两行数字,每行有若干的数,如果相邻的两个数字的最大公约数不是1 的话拟具可以把这两数删除,并且把第二行对应的数字加起来,你的任务就是让这些数字的和最大 1 #include<stdio.h> 2 # 阅读全文

posted @ 2016-09-23 20:41 上进小青年 阅读(205) 评论(0) 推荐(0) 编辑

2016年9月20日

pow的小事不简单

摘要: http://acm.hdu.edu.cn/showproblem.php?pid=5878 阅读全文

posted @ 2016-09-20 23:44 上进小青年 阅读(152) 评论(0) 推荐(0) 编辑

2016年9月19日

math汇总

摘要: **** 1/(1^2) + 1/(2^2) + … + 1/(n^2)会收敛到pi^2/6,当n的数位大于6位数字时,最后的结果就是pi^2/6 ****** &的大作用 1.先看看这个n=10100,则n-1=10011而n&n-1=10000; 那么就可以求出某一个数的二进制表示中1的个数 还 阅读全文

posted @ 2016-09-19 19:40 上进小青年 阅读(182) 评论(0) 推荐(0) 编辑

2016年9月17日

Bellman-Ford最短路径

摘要: 对于前面说到的最短路径的求解方法,不能解决负权边的情况,而Bellman-Ford却可以 共有n个顶点,m条边,每次输入u[i],v[i],w[i],代表从u[i]到v[i]的距离是w[i],对于所有的顶点进行n-1次松弛 更多详细的内容在代码中会讲解,大家还是直接看代码吧^...^ 1 #incl 阅读全文

posted @ 2016-09-17 11:49 上进小青年 阅读(193) 评论(0) 推荐(0) 编辑

2016年9月16日

图的遍历

摘要: 1 #include<stdio.h> 2 #include<iostream> 3 #include<algorithm> 4 #include<string.h> 5 using namespace std; 6 const int inf=0x3f3f3f3f; 7 int m,n,sum=0 阅读全文

posted @ 2016-09-16 14:01 上进小青年 阅读(139) 评论(0) 推荐(0) 编辑

2016年9月12日

dijkstra

摘要: 寻找从源结点到其他点之间的最短距离。 把给出的结点分成两组,一组a刚开始为空,另一组b为全部节点,dis[i]记录从源点到i结点的距离,同样当所有操作结束后dis[i]就是到达源点的最短距离啦,每次更新的时候dis[i]的距离都会缩小。 1 #include<stdio.h> 2 #include< 阅读全文

posted @ 2016-09-12 21:08 上进小青年 阅读(145) 评论(0) 推荐(0) 编辑

floyd

摘要: 求任意两点之间的最短路径。e[i][j]为记录从i到j之间的距离,当循环结束后最后存储的就是i到j之间的最短路径啦。 floyd算法就是对于给定的n个结点,对于每一个e[i][j],都让它经过1,然后比较e[i][j]和e[i][1]+e[1][j]的大小,来更新e[i][j],再用2依次比较一下, 阅读全文

posted @ 2016-09-12 20:08 上进小青年 阅读(273) 评论(0) 推荐(0) 编辑

2016年9月6日

最小生成树之prim

摘要: prim是设置一个初始结点,寻找其周围最小的边权值,并将该结点作为初始结点,继续寻找现在结点周围的边权值的最小值,但要注意如果这次寻找的某个边权值没有上次的小的话仍然保留上一次的边权值,即lowcast的值将会不变。 1 #include<stdio.h> 2 #include<iostream> 阅读全文

posted @ 2016-09-06 17:50 上进小青年 阅读(219) 评论(0) 推荐(0) 编辑

2016年9月5日

最小生成树Kruskal算法

摘要: Kruskal算法就是把图中的所有边权值排序,然后从最小的边权值开始查找,连接图中的点,当该边的权值较小,但是连接在途中后会形成回路时就舍弃该边,寻找下一边,以此类推,假设有n个点,则只需要查找n-1条边即可。 阅读全文

posted @ 2016-09-05 19:33 上进小青年 阅读(183) 评论(0) 推荐(0) 编辑