随笔分类 -  ACM-搜索

摘要:本人开园第一天,打算主要发表算法、编程及技术面试题等相关内容,还望各大牛多多指教!DFS深度搜索算法实现深度探究解析-以POJ 1040为例#include <iostream>#include <cstdlib>#include <algorithm>using namespace std;#define maxm 23#define maxn 8int cap, n, m;int ans;int ocount;int down[maxn];struct Order{ int s, e, p;}order[maxm];int max(int a,int b 阅读全文
posted @ 2011-12-22 21:32 yangleo 阅读(1078) 评论(0) 推荐(0)
摘要:这是一道比较简单的DP,通过分析可以设最后拿走的牌为i,则所求的最优解就是i左边和右边子列的最小连乘积再加上x[a]*x[i]*x[b],因为i将原来的序列划分为两个子列,这两个子列符合“最优子结构”和“重叠子问题”的dp特点,他们的最优解互相之间没有影响,只会影响全局问题的最优解,在POJ discuss中的解析比较经典,摘录如下,以后做题可以常常看看discuss,就当学习,但是还是要独立思考为主对于整个牌的序列,最左端和最右端的牌是不能被取走的,除这两张以外的所有牌> ,必然有一张最后取走。取走这最后一张牌有一个仅与它本身以及最左端和最右端的> 牌的值有关的得分,这个分值与其 阅读全文
posted @ 2010-12-14 23:35 yangleo 阅读(235) 评论(0) 推荐(0)
摘要:///这题不是很理解有待于重做,BFS+模拟,模拟有点麻烦 #include<stdio.h> #include<string.h> #include<queue> using namespace std; queue<int> q; int w,h; char map[45][45]; int dl[4][2]={{0,-1},{-1,0},{0,1},{1,0}}; int vis[45][45]; int dire,k;///指向当前移动方向。 int left(int a,int b,int c,int d) { if(a==c& 阅读全文
posted @ 2010-12-11 21:44 yangleo 阅读(165) 评论(0) 推荐(0)