Codeup
九筒-
这个作者很懒,什么都没留下…
展开
-
计蒜客-一维跳棋BFS思路与注意点--补充《算法笔记》
一维跳棋本题思路节点:当前的序列顺序str,遍历到当前节点时的空格序列step边界:当前顺序与要求顺序相同时break队列节点:空格前后两格的棋子,满足条件即可入队个人思路的大体方向没有错。对空格前后两格棋子进行遍历,满足范围条件,与空格,即数字0交换位置,并在入队节点的step后追加空格交换后所在位置。个人思路此题使用bfs有些抽象,不像迷宫哪些容易想到,不知道如何扩散。开始思...原创 2020-02-24 13:15:14 · 710 阅读 · 2 评论 -
计蒜客-引爆炸弹思路与注意点--补充《算法笔记》
引爆炸弹在一个n*m的方格地图上,某些方格上放置着炸弹。手动引爆一个炸弹以后,炸弹会把其所在的行和列的所有炸弹引爆,被引爆的炸弹又能引爆其他炸弹,这样连锁下去。现在为了引爆地图上的所有炸弹,需要手动引爆其中一些炸弹,为了把危险程度降到最低,请算出最少手动引爆多少个炸弹可以把地图上的所有炸弹引爆。输入格式第一行输入两个正数n,m,用空格隔开。接下来n行,每行输入一个长度为m的字符串,表示...原创 2020-02-22 11:27:21 · 437 阅读 · 0 评论 -
Codeup.序列合并思路与注意点--补充《算法笔记》
序列合并题目链接本题思路既然只输出前N个值,并且给出的数据已经排好序,可以先计算存储a[1] + b[1~N]的N个元素,并建立大顶堆(原因见下文个人思路)。然后计算num = a[2 ~ N] + b[1 ~ N],并与堆顶元素比较(堆顶元素最大),比堆顶元素小就删去堆顶元素,插入当前计算的num,最后堆排序输出即可保证了删去的永远是最大值,插入的永远是相对小的值,个数始终保持在N个A...原创 2020-03-04 17:28:51 · 196 阅读 · 0 评论 -
Codeup.More is better思路与注意点--补充《算法笔记》
More is better题目链接个人思路代码本题1e7的数据量,很容易超时。个人的超时思路,超时问题:1e7的数据量做循环初始化memset 初始化1e7数据量的数组得出最大值时又一次循环1e7超时代码#include <bits/stdc++.h>using namespace std;const int maxn = 10000001;int n;...原创 2020-03-03 20:27:53 · 202 阅读 · 0 评论 -
Codeup.通信系统(并查集)思路与注意点--补充《算法笔记》
通信系统题目链接个人思路本题就是一个并查集的基本操作。并查集初始化根据输入数据两两合并查找根节点并计数,判断所有点均在一个集合内,输出yes,否则为no有两个值得注意的地方本题注明要每个节点均要收到消息,并且不能重复收到消息,也就是说N个结点都要在一个树型集合内(图则会出现环路),根据树的性质,N个结点连通必须有N-1条边,因此M = N - 1才符合条件(可以把这个判断条件...原创 2020-03-03 13:57:00 · 200 阅读 · 0 评论 -
Codeup-BFS-8数码难题思路与注意点--补充《算法笔记》
八数码问题题目链接本题思路将3*3的矩阵进行状态压缩,并对压缩后序列进行映射(map<string, bool>,康托展开),遍历节点并入队,直到找到最后的序列顺序。状态压缩:状态压缩是个很神奇的东西,可以把复杂的状态压缩到一个简单的数来保存。类似于哈希?从某个课件上看到了这种总结感觉很不错:当状态维数很多,但总量很少时,可以将状态压缩为一个数来记录。以前以为状态压缩只能是d...原创 2020-02-25 17:44:10 · 171 阅读 · 0 评论 -
Codeup-排列组合思路与注意点--补充《算法笔记》
排列组合全排列组合输出本题思路排列组合问题本质上是在N个数字中选出K个数字的问题,全排列是特殊的排列组合,K=N,因此需要vis[]数组进行标识,防止遗漏或重复访问,并在进入递归之后取消标记,以便第二次访问。因此要按照求子集的思路解题。递归参数:正在处理的数字或下标index;根据题意添加nowK表示已处理的数字个数递归边界:数字超过规定界限index>n;已处理的数字个数达到题...原创 2020-02-22 20:18:26 · 194 阅读 · 0 评论 -
Codeup-迷宫问题思路与注意点--补充《算法笔记》
A1033题目链接本题思路对于我这个新手来讲,在处理这道题的逻辑时,还是费了些周折的,下面来讲一下这道题的具体思路:很明确这道题是使用贪心法首先对所有加油站按距离远近进行排序;查找出可行范围内,距离当前加油站最近的,油价比当前低的加油站,加一部分油,使其刚好加到更合适的加油站。若可行范围内没有比现在更便宜的加油站,则说明此处是相对最便宜的,应该把油加满,然后前往接下来价格相对较低的加油...原创 2020-02-21 22:51:15 · 256 阅读 · 0 评论 -
Codeup-出栈序列统计思路与注意点--补充《算法笔记》
Codeup 出栈序列统计题目链接本题思路递归参数:入栈次数push,出栈次数pop,栈容量size递归边界:出栈次数和入栈次数同时达到n次时递归体:if(栈不空&&出栈次数不到n次)执行出栈操作;if(栈不满&&入栈次数不到n次)执行入栈操作个人解题时的思路与启示本题递归的个人思路仍然出现问题,且理解也出现偏差,在递归体中并不是入栈次数减一,伴随出栈...原创 2020-02-21 16:44:06 · 147 阅读 · 0 评论 -
Codeup-N皇后问题思路与注意点--补充《算法笔记》
A1033题目链接N皇后是dfs(递归或回溯法)的经典问题。接触过很多次这类问题,但始终无法真正吃透,做些总结,帮助梳理。本题思路递归参数:棋盘上的每一行作为参数,从第0行至第n行依次遍历递归边界:当行数等于n时(若题目需要输出具体位于列的位置,也可将ans.size() == n作为边界的判断条件)递归体:由于行作为参数进行顺序遍历,递归体中应对列进行顺序遍历,完成皇后的放置,并对行...原创 2020-02-21 15:30:49 · 172 阅读 · 0 评论