数据结构_习题
yurio7r
ipy8pyp
展开
-
UVA 442 Matrix Chain Multiplication
书上的代码#include#include#includeusing namespace std;struct Matrix { int a, b; Matrix(int a=0, int b=0):a(a),b(b) {}} m[26];stack s;int main() { int n; cin >> n; for(int i = 0; i <转载 2015-09-27 23:05:05 · 328 阅读 · 0 评论 -
UVA 11988 Broken Keyboard (a.k.a. Beiju Text)
看到有人说可以用双端队列!然后就写了,感觉比书上的链表更容易理解啊!#include #include #include #include #include using namespace std;int main(){ char ch[1000005]; while(scanf("%s",ch)!=EOF) { deque que; int lenth原创 2015-09-28 22:52:20 · 430 阅读 · 0 评论 -
UVA 12657 Boxes in a Line
第一次遇见双向链表的题目!我确实不会!看看作者的代码,学习!!!!领悟#include#includeusing namespace std;const int maxn = 100000 + 5;int n, left[maxn], right[maxn];inline void link(int L, int R) { right[L] = R; left[R] = L;}i转载 2015-09-28 23:21:51 · 381 阅读 · 0 评论 -
UVA 572 Oil Deposits
基础题目!dfs,搜索图!#include #include using namespace std;char arr[105][105];int m,n;int dir[8][2]={{1,0},{1,1},{0,1},{-1,1},{-1,0},{-1,-1},{0,-1},{1,-1}};int dfs(int x,int y){ arr[x][y]='*'; for(原创 2015-09-29 22:52:14 · 393 阅读 · 0 评论 -
UVA 10305 Ordering Tasks
开心!我又从书上学会了拓扑排序!从别人博客上转过来的一句话: 关键在于为什么在visit方法的最后将该顶点添加到一个集合中,就能保证这个集合就是拓扑排序的结果呢? 因为添加顶点到集合中的时机是在dfs方法即将退出之时,而dfs方法本身是个递归方法,只要当前顶点还存在边指向其它任何顶点,它就会递归调用dfs方法,而不会退出。因 此,退出dfs方法,意味着当前顶点没有指向其它顶转载 2015-10-01 22:25:05 · 480 阅读 · 0 评论 -
UVA 514 Rails
输入和输入我都折腾了好久,这道题花了差不多两个小时才解决,而且还参考了书上的代码!QAQ#include #include #include using namespace std;int main(){ int num;//这就是那个n。。。。 while(scanf("%d",&num)&&num)//居然要输入两个0才算程序的终结 { int arr[1005]; s原创 2015-09-23 23:43:43 · 533 阅读 · 0 评论