自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

比宇宙更远的地方-

跃迁引擎启动。

  • 博客(20)
  • 收藏
  • 关注

原创 UVa818 Cutting Chains

使用迭代加深搜索,对剪断顶点个数为深度进行搜索,比用位运算暴力枚举全部子集要稍微快一点。注意题意的理解,每个顶点一条小圆环,打开小圆环时,其与其他所有边都断开了。题目要求为断开某些顶点后,任一顶点度数至多为2,图上没有环,断掉顶点个数必须大于等于除去断掉的顶点的图上联通块个数减一(使用断掉的顶点将所有联通块连成一条链)。AC代码:#include <iostream>#include...

2018-06-25 15:06:25 428

原创 Play on Words UVa10129

欧拉回路模板题,wa了半天才过就很难受。首先题目给了一个有向图,对于一个有向图的欧拉回路,要求每个节点的入度等于出度或者存在两个点入度出度相差1。然后将图恢复为无向图,使用dfs判断图的联通性。P.S. 学习队列.push(并查集)。。一开始试了好几种写法,所以ac代码有很多历史遗留产物,比如have数组。。#include <iostream>#include <cstdio...

2018-03-27 22:38:40 224

原创 Ordering Tasks UVa10305

拓扑排序模板题,参考紫书。使用邻接矩阵建图,开一个vis数组记录节点是否被访问。从第一个节点开始遍历,只要此节点未被访问过,则对其进行dfs。dfs过程中,先对正在访问的节点记录为-1,则当后面dfs深入时,遇到指向的节点vis值为-1,则出现了环图,返回false,并逐层将false返回,每个节点的所有后继访问结束时,将vis值置为1,即已经被访问,之后到达dfs最深层次即为拓扑排序的尾部节点,...

2018-03-26 23:04:06 162

原创 Not so Mobile UVa839

一开始,自己题意貌似理解错误,物理太差了。瞅了一眼紫书的源码,才明白自己原来写的有问题,忽略了对支点的考虑,而且也不需要开数组存整棵树。紫书源码,精妙之处在于对每个节点质量更新的处理,使用了引用,更深处的递归的质量变化将会更新当前节点的质量。AC代码(参看紫书)#include <iostream>using namespace std;int solve(int& w)...

2018-03-19 23:54:15 177

原创 Tree UVa548

本题要求使用一个二叉树中序遍历和后序遍历的结果,反向构造出树。看的紫书的代码,建树过程主要通过build函数,传递4个参数,中序遍历起点、终点,后序遍历起点、终点,递归地建出整个树,注意到,后序遍历的最后一个数据为当前子树的根节点,在中序遍历结果中找到该节点,可以得到该节点左边范围为左子树,右边为右子树。此时开left和right两个数组,直接对权值进行编号,数据记录了左右儿子的序号,也就是左右儿...

2018-03-15 00:44:22 245

原创 Trees on the level UVa122

一开始写的指针实现的版本,貌似存在内存泄漏问题,输入之间有蜜汁相互作用,后改为数组实现,AC。指针版本:#include <cstdio>#include <queue>#include <vector>using namespace std;char x[300], cmd[300];int flag;struct node{ int ...

2018-03-13 00:34:03 193

原创 HDU1029

本题对时间非常敏感,一开始思路是使用map,后来注意到直接输入然后排序,输出中位数即可,使用vector时发生TLE,改成普通数组ac。#include <iostream>#include <algorithm>#include <cstring>using namespace std;int arr[1000010];int main(){ ...

2018-03-05 23:39:27 325

原创 Matrix Chain Multiplication UVa442

Times: 23 mins栈在表达式计算的应用,参考数据结构课程。#include <iostream>#include <stack>#include <string>#include <utility>#define p pair<int, int>using namespace std;p x[30];long lo...

2018-02-10 21:37:52 216

原创 Rails UVa514

TImes: 17 mins.栈混洗模板,模拟混洗过程即可。#include <iostream>#include <stack>using namespace std;stack<int> A, C;int res[1005] = { 0 };void clear(stack<int> &x){ while (!x.em...

2018-02-10 21:36:29 187

原创 Concurrency Simulator UVa210

Times: 2 hrs.很好的一道STL题,本题核心练习了queue和deque的运用。首先,本题的输入就比较麻烦,带空格,选用cin.getline()读取整行,使用string流读取了操作数。储存方式最终选择用了两个向量,一个储存指令类型,一个储存指令对应的操作数(无操作数用-1填充),这两个向量都是从1开始储存,第0位保存当前并行程序运行位置(类似于IP寄存器)。过程模拟上没有太多问题,主...

2018-02-10 21:35:30 279

原创 Throwing cards away UVa10935

水题,输出的 remaining 巧妙地打错了导致wa。#include <iostream>#include <vector>using namespace std;vector<int> deck;int main(){ int n; while (cin >> n && n) { ...

2018-02-10 21:34:51 211

原创 Ducci Sequence UVa1594

#include <iostream>#include <cmath>#include <map>#include <vector>using namespace std;vector<int> seq, seq2;map<vector<int>, int> check;int main(){ i

2018-02-10 21:34:12 139

原创 Alignment of Code UVa1593

#include <iostream>#include <string>#include <sstream>#include <vector>using namespace std;vector<vector<string>> code;vector<string> line;int maxLen[2

2018-02-10 21:32:56 120

原创 Database UVa1592

本题很迷,并不知道错在哪,以下给出AC代码。去掉memset后wa,我写的输入数据库,使用getline()函数,并用‘,’作为分隔符,提交WA。不做以上修改仍然可过udebug,很迷,搞不懂。#include <iostream>#include <map>#include <vector>#include <string>#include...

2018-02-10 21:30:37 172

原创 Database UVa1592

本题很迷,并不知道错在哪,以下给出AC代码。去掉memset后wa,我写的输入数据库,使用getline()函数,并用‘,’作为分隔符,提交WA。不做以上修改仍然可过udebug,很迷,搞不懂。#include <iostream>#include <map>#include <vector>#include <string>#include &lt...

2018-02-10 21:29:46 163

原创 The Setstack Computer UVa12096

本题的思想很重要,题意中的集合概念较抽象,因此对每种集合编号。stack为题意所描述的stack computer,存放着抽象集合对应的唯一编号,而编号所对应的集合里面也存放着集合的编号,形成了抽象集合的嵌套关系。函数getID(set<int>):set<int> ==> 编号,通过映射ID将每个集合对应唯一编号,以此保证集合元素的互异性,接口返回编号或者分配新的编...

2018-02-10 21:29:12 252

原创 Othello UVa220

Time: 3 hrs.这种棋啊什么玩意的题目是真的烦,情况没考虑好就要WA,而且对于我这种弱鸡代码写的非常冗余。本题输出有很多坑,uDebug调试AC后,竟然还是WA。无奈拿着这个代码自己和自己下黑白棋,最后无意间发现在边界的时候会有迷之吃子。虽然分析代码后,发现问题不大?还是最后加了宏is进行判断,终于AC。写的太丑了Orz。#include <cstdio>#include &...

2018-02-10 21:28:13 170

原创 Squares UVa201

Time: 45mins.#include <iostream>#include <cstring>using namespace std;int h[20][20] = { 0 }, v[20][20] = { 0 }, res[20] = { 0 };int main(){ int kase = 0, size, T; while (cin &...

2018-02-10 21:26:30 241

原创 Xiangqi UVa1589

Time: 3 hrs 20 mins一个把我搞得快崩溃的题,一开始没有把问题考虑好,采用边输入边检查攻击范围,没有考虑到后面的棋子。第二个问题,黑将可以吃子的问题,采用的解决方法是车和炮的攻击范围,从一开始会被棋子打断(该位置不在范围),到包括该位置,即假如黑将吃了这个棋子,那么就进入攻击范围。第三,忘记把红将也设置为红车进行判定,这才把所有情况考虑周到,但是又忘记删掉重定向,最后才AC。#in...

2018-02-10 21:24:38 265

原创 Broken Keyboard UVa11988

本题关键为链表的数组实现,用nxt数组模拟txt中元素之间的指向关系。构造nxt数组时,头元素指向尾0,遍历txt并将元素的指向关系插入到nxt中。#include <iostream>#include <cstring>using namespace std;int nxt[100005];char txt[100005];int main(){ while...

2018-02-10 21:06:51 175

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除