![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
acm集训日志
请叫宝宝荡哥
这个作者很懒,什么都没留下…
展开
-
参加acm暑假训练第一天
早早的到了,有些迷茫,有些担忧,迷茫的是不知道接下来这一个月怎么度过,担忧的是自己可能跟不上。第一天倒是没什么任务,会长只是让我们签下到,开个博客,熟悉熟悉而已。为了让自己接下来能真正学到些东西,我还是初步的定下一个计划。首先当然是完成协会的每日任务,其次每天学会《算法竞赛入门经典》的一个小知识点,每天一个就够,最后如果还有时间的话就刷刷杭电。初步计划是这样,在接下来几天根据实际进行调整,希望自己能原创 2016-07-10 21:32:18 · 332 阅读 · 0 评论 -
训练第五周之最小生成树
本篇纯属鬼扯,因为不是很想看大神们写的Prim算法和Kruskal算法,所以靠自己理解写一下这两天刷的最小生成树的题目,希望以后能把本篇修正。Kruskal算法一、定义:最小生成树是指通过算法找到搜索到的边子集所构成的树中,不但包括了加权连通图里的所有顶点 (英语:Vertex (graph theory)),且其所有边的权值之和亦为最小。二、概述:设G=(V,E)是一个加权连通图,首先定义一个结构原创 2016-08-10 20:48:11 · 313 阅读 · 0 评论 -
训练第五周之Dijkstra算法
Dijkstra算法:http://www.cnblogs.com/biyeymyhjob/archive/2012/07/31/2615833.html(作者:华山大师兄)原创 2016-08-10 11:23:21 · 502 阅读 · 0 评论 -
训练第四周之二分查找
二分法二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。一般在单调函数中用得比较多,直接看题吧。1、Pie-hdu1969思路:这里直接查找所求,也就是每个人能得到的最大pie,然后条件是right-left>1e-6,这种对精度要求比较高的大都可以这样写代码:#include#include#inc原创 2016-08-08 11:06:51 · 368 阅读 · 0 评论 -
训练第四周之矩阵快速幂
矩阵快速幂 = 矩阵乘法 + 快速幂我觉得矩阵快速幂的题目不是很难,只要通过递推找到关系矩阵A(构造任意线性递推式对应的矩阵),然后求A的k次幂乘以题目所给数据就能得到所求。1、矩阵乘法:当第一个矩阵A的列数和另一个矩阵B的行数相等时才可以相乘,复杂度位O(n^3)代码模板:Mat MulMat(Mat a,Mat b)///a与b进行矩阵相乘运算,Mat为自己定义的结构体变量类型{ Ma原创 2016-08-08 11:05:40 · 572 阅读 · 0 评论 -
训练第三周之dp习题
个人感觉做dp题目就是求什么就设什么,dp[i]数组就是所求,然后找出子问题,写出状态转移方程就差不多出来了1、Max Sum-hdu10032、Humble Numbers-hdu10583、最少拦截系统-hdu12574、Monkey and Banana-hdu1069 5、Distribute Message-hdu1723原创 2016-08-02 11:29:38 · 423 阅读 · 0 评论 -
训练第三周之dp-序列
本篇纯属抄袭协会ppt,以求以后能随时回顾。1、最长递增子序列(LIS)概念:子串:指给定字符串中选取的某一连续的段子序列:可以不连续,但是要保证原字符串的顺序例:给定字符串{A,B,C,D,E}{A,B,C}既是子串,又是子序列。 {A,C,E}仅为子序列。最长递增子序列:即子序列的元素是递增的。求法:假设有x个元素组成的序列,以第i个元素结尾的最长递增子序列长度为dp[i]。此时在序列末转载 2016-08-02 11:00:02 · 354 阅读 · 0 评论 -
训练第二周之DFS(深度优先搜索)
周一听了副会长讲课,讲得不是很清楚,很迷糊的就去刷题去了,在题解和同学帮助下,花了大把大把的时间才刷了那么几题,结果对DFS还是不清楚,感觉事倍功半了。。。基本简介:深度优先搜索(Depth-First-Search)是搜索算法的一种。是沿着树的深度遍历树的节点,尽可能深的搜索树的分支。当节点v的所有边都己被探寻过,搜索将回溯到发现节点v的那条边的起始节点。这一过程一直进行到已发现从源节点可达的所有原创 2016-07-20 21:14:13 · 611 阅读 · 1 评论 -
训练第三周之dp-背包训练
01背包、完全背包、多重背包原创 2016-07-30 10:28:05 · 385 阅读 · 0 评论 -
训练第七天之数据比较
今天白天是放假的,每天满满的训练让我没有时间开黑,所以不用说,放假的一整天都在开车。。。 晚上又得训练,因为要为第二周的模块做预习。然后会长还交给了我们如何利用已给数据来判断自己程序是否能过。预习:无向(有向)图的定义:每条边都是无向(有向)边的图连通图:任两点都连通的图称为连通图。树(自由树、无根树)的定义:连通的无回路的无向图。集合中的元素称为树的结点,所定义的关系称为父子关系。有向树:一个结原创 2016-07-17 20:34:53 · 321 阅读 · 0 评论 -
训练第六天
第五天上午只是讲了一下前一天贪心算法的题目,下午的模拟赛又真的打击到我了,6道只A了2道,所以实在没心情写博客。。。不过值得一提的是开了个计蒜客账号,在上面学习,里面知识很详细,能学到很多东西,不过那个代码匹配系统也太low了吧,一定要一模一样才能过,这实在不想吐槽。。。今天也是刷了一整天的昨天模拟赛没A的题,结果还有一道怎么都A不了,还有一道没时间做了。。。我这效率我真是。。。King’s Cak原创 2016-07-15 22:48:54 · 434 阅读 · 0 评论 -
训练第四天之贪心算法
概念:所谓贪心算法是指,在对问题求解时总是做出在当前看来是最好的选择。在此种情况下做出的仅仅是在某种意义上的局部最优解。(但是局部最优解并不一定总是能得到全局最优解)条件:1.整体的最优解可以通过局部的最优解导出(贪心选择性质) 2.一个整体能够被分为多个子问题,并且这些子问题都能够求出最优解(最优子结构性质)例题:1.Saving HDU(杭电2111)贪心思想:每次取剩余中最有价值的宝物,直到原创 2016-07-13 21:27:58 · 385 阅读 · 0 评论 -
训练第二周之BFS例题
百练题目原创 2016-07-24 21:15:54 · 647 阅读 · 0 评论 -
习题之用sort给结构体排序
题目:输入数据第一行包含一个数N,接下有N行,每行一个实例,包含a,b两个数,现自定义一个结构体,将N行实例按a降序排列,如果a相等就按b升序排列。代码:#include<stdio.h>#include<stdlib.h>#include<algorithm>using namespace std;struct temp { int a,b; };typed原创 2016-07-12 15:20:47 · 694 阅读 · 0 评论 -
训练第二天,收获
上课内容:首先,讲了一下枚举法,着重讲了暴力枚举和分类枚举,暴力枚举像我这样的初学者用得比较多,而分类枚举这是用一定的算法思想来降低总时间复杂度;接着讲了用辗转相除法求最大公约数,在习题中还与递归结合起来使我印象很深;最后讲了一下记忆化思想简述,是指通过预处理将需重复利用的结果记忆起来,再次使用时直接调用,从而降低时间复杂度,这部分听的时候一知半解,做完习题看到会长评论才知道自己还是用的暴力求解,不原创 2016-07-12 00:53:59 · 392 阅读 · 0 评论 -
训练第二周之BFS算法(广度优先搜索)
本篇参考自rapheal的【算法入门】广度/宽度优先搜索(BFS),觉得写得超级赞,大家去他那里相信会有很多收获。基本简介:每次将集合中的元素经过一些改动,分层生成当前状态的子状态(通常还删除父情况),添加到集合(队列)中,以实现遍历或搜索等目的的算法。一般可以用它做什么呢?一个最直观经典的例子就是走迷宫,我们从起点开始,找出到终点的最短路程,很多最短路径算法就是基于广度优先的思想成立的。据图说明:原创 2016-07-21 19:03:15 · 2035 阅读 · 0 评论 -
训练第二天,两个习题
用递归编写辗转相除法求最大公约数题目:求a和b的最大公约数。1<=a,b<=10^18辗转相除法:记a,b的最大公因数为gcd(a,b)。 有定理: gcd(a,0)=a gcd(a,b)=gcd(b,a%b) (b!=0)代码:#include<stdio.h>int gcd(int n,int m);int main(){ int n,m; printf("input t原创 2016-07-11 10:19:51 · 480 阅读 · 2 评论 -
训练第五周之只有五行的Floyd算法
http://developer.51cto.com/art/201403/433874.htm(作者:坐在马桶上看算法)个人觉得这个大神写得很好,所以放在这里参考一下Floyd算法:一、定义:Floyd算法是用于解决多源最短路径的算法,即可以求任意两个节点之间的最短路径,由Robert W. Floyd(罗伯特·弗洛伊德)于1962年发表在“Communications of the ACM”上。原创 2016-08-11 20:39:47 · 434 阅读 · 0 评论