摘要: 分析 枚举所有的边,把这一条边去掉,在跑n遍最短路。 设置del[x][y]$$成一个删除数组,每次在spfa更新最短路的时候,在加一个判断是否被删除。 AC代码 cpp include using namespace std; struct str{ int from,to,next,v; }e[ 阅读全文
posted @ 2018-09-27 13:00 dawnstar 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 题目描述 假设一个表达式有英文字母(小写)、运算符(+,—, ,/)和左右小(圆)括号构成,以“@”作为表达式的结束符。请编写一个程序检查表达式中的左右圆括号是否匹配,若匹配,则返回“YES”;否则返回“NO”。表达式长度小于255,左圆括号少于20个。 AC代码 阅读全文
posted @ 2018-09-27 12:47 dawnstar 阅读(810) 评论(0) 推荐(0) 编辑
摘要: 分析 按照这个题目随便写一个搜索就可以了 AC代码 cpp include include include include include using namespace std; const int dx[4]={ 1,0,1,0}; const int dy[4]={0, 1,0,1}; con 阅读全文
posted @ 2018-09-26 16:12 dawnstar 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 分析 简单的区间DP AC代码 cpp include using namespace std; define ms(a,b) memset(a,b,sizeof(a)) typedef long long ll; int Dp_max[305][305],Dp_min[305][305]; int 阅读全文
posted @ 2018-09-25 22:21 dawnstar 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 分析 做两遍最长上升子序列,在遍历一下,取最大值。 AC代码 cpp include using namespace std; define ms(a,b) memset(a,b,sizeof(a)) typedef long long ll; int a[105]; int dp1[105],dp 阅读全文
posted @ 2018-09-25 21:47 dawnstar 阅读(303) 评论(0) 推荐(0) 编辑
摘要: AC代码 cpp include using namespace std; define ms(a,b) memset(a,b,sizeof(a)) typedef long long ll; int a[100005]; int n; inline int read(){ int X=0,w=0; 阅读全文
posted @ 2018-09-24 20:36 dawnstar 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 题目描述 经过 11年的韬光养晦,某国研发出了一种新的导弹拦截系统,凡是与它的距离不超过其工作半径的导弹都能够被它成功拦截。当工作半径为0时,则能够拦截与它位置恰好相同的导弹。但该导弹拦截系统也存在这样的缺陷:每套系统每天只能设定一次工作半径。而当天的使用代价,就是所有系统工作半径的平方和。 某天, 阅读全文
posted @ 2018-09-24 15:49 dawnstar 阅读(355) 评论(0) 推荐(0) 编辑
摘要: AC代码 阅读全文
posted @ 2018-09-21 21:56 dawnstar 阅读(698) 评论(0) 推荐(0) 编辑
摘要: AC代码 cpp include using namespace std; define ms(a,b) memset(a,b,sizeof(a)) typedef long long ll; int n,k,ans; int x[25]; inline int read(){ int X=0,w= 阅读全文
posted @ 2018-09-21 21:26 dawnstar 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 浅谈线段树 (来自TRTTG大佬的供图) 线段树个人理解和运用时,认为这个是一个比较实用的优化算法。 这个东西和区间树有点相似,是一棵二叉搜索树,也就是查找节点和节点所带值的一种算法。 使用线段树可以快速的查找某一个节点在若干条线段中出现的次数,时间复杂度为O(logN),这个时间复杂度非常的理想, 阅读全文
posted @ 2018-09-21 17:46 dawnstar 阅读(622) 评论(0) 推荐(1) 编辑