
算法竞赛入门经典(第二版)
文章平均质量分 58
「已注销」
zhangzhang
展开
-
UVA 11572 Unique Snowflakes(滑窗|双指针)
UVA 11572 Unique Snowflakes(https://vjudge.net/problem/UVA-11572)题意一个长度为n的序列A,找到一个尽量长的连续子序列,并且该序列中没有相同元素解决 以区间来思考这个问题,让右指针不断增加,增加到一个不能增加(冲突)的位置 当无法延伸右指针,也就是说A[right]在A[left,right-1]这段出现过,此时增大左指针 我们增加左指原创 2017-08-23 09:27:20 · 481 阅读 · 0 评论 -
ACM进阶之路(欢迎来看)
ACM进阶指南(转载)ACM队不是为了一场比赛而存在的,为的是队员的整体提高。大学期间,ACM队队员必须要学好的课程有: C/C++两种语言 高等数学 线性代数 数据结构 离散数学 数据库原理 操作系统原理 计算机组成原理 人工智能 编译原理 算法设计与分析 除此之外,我希望你们能掌握一些其它的知识,因为知识都是相互联系,触类旁通的。以下学习计划每学期中的内容不分先后顺序,虽说是为立志于学习ACM的转载 2017-08-20 19:21:48 · 521 阅读 · 0 评论 -
(二叉树建树 先序遍历)UVA_122 Trees on the level
UVA_122 Trees on the level题意让我们构建一棵树,给出每一个节点是从根节点怎么走才能走到. 比如(11,LL)就是根节点的左子树的左子节点的位置权值为11.然后让给出这棵树的先序遍历结果. 如果出现下列情况,输出”not complete” 重复赋值 没有根节点 有节点没有被赋值 给出超过一个节点 解决这个题的输入比较坑啊,刚上来感觉解决不了…原创 2017-08-16 23:19:35 · 351 阅读 · 0 评论 -
UVA_439 Knight Moves
UVA_439 Knight Moves 题意给出一个标准的象棋棋盘,给出马的起始位置和目标位置,问最少要跳几次解决 我大概是傻了,刚开始还不知道要怎么做… 之前做的BFS题移动方向都是”上下左右”或者是”八连通”,一看到”走日字”就转不过弯了(⊙o⊙)… 所以这个题就是裸BFS “`java int maps[9][9],dis[9][9]; int dir[8][2]={{2,1},{2,-原创 2017-08-16 07:20:26 · 330 阅读 · 0 评论 -
UVA_1600 Patrol Robot
题目UVA_1600 Patrol Robot 题意机器人从地图左上角走到地图右下角. 地图上有障碍物,机器人最多可以连续跨越k个障碍物(注意没有要求必须是直线),询问最短路径解决 在正常的BFS上面增加一些条件 增加vis数组的第三个维度.第三个维度表示在当前位置,已经穿越的障碍物数量为level的情况是否已经被处理 注意同一地点,不同level不冲突,比如vis[1][2][2]==1,当访问原创 2017-08-16 07:19:43 · 354 阅读 · 0 评论