会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
无名菜鸟1
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
6
7
8
9
10
11
12
13
14
···
25
下一页
2020年2月19日
倍增(lca模板)
摘要: http://poj.org/problem?id=1330 题意:给出一颗n个节点的树,问u、v的lca。 解法:倍增: 1、两数组fa[i][j]表示i节点的长为2j的祖先,de[u]记录节点深度。 2、dfs遍历预处理de[u] , 有fa[u][i] = fa[fa[u][i-1]][i-1
阅读全文
posted @ 2020-02-19 00:53 无名菜鸟1
阅读(313)
评论(0)
推荐(0)
2020年2月17日
tarjian(求最短距离)
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=2586 题意:给出一颗n个节点,n-1边且有距离(带权),m次询问,问两点间最短距离。 解法:记录每一个节点到根节点(默认为1)距离,u、v两点距离为dis[u]+dis[v]-2*dis[fa]. //#incl
阅读全文
posted @ 2020-02-17 21:49 无名菜鸟1
阅读(180)
评论(0)
推荐(0)
tarjian(lca模板)
摘要: http://poj.org/problem?id=1330 题意:给出一颗n个节点的树,n-1条边表示u是v的父节点。询问a与b的最近公共祖先 解法:tarjian: 1、找出根节点(无父节点)从根点开始dfs遍历图,直到遍历该节点已经没有可访问的点为止 2、回溯,将v与u合并(注意u与v的父子关
阅读全文
posted @ 2020-02-17 20:12 无名菜鸟1
阅读(439)
评论(0)
推荐(0)
滑动窗口
摘要: http://poj.org/problem?id=2823 题意:给出n个数,窗口大小为k,窗口从1滑到n-k,问所以窗口内的最大最小值; #include <iostream> using namespace std; int a[1001000] , q[1001000] ; int h ,
阅读全文
posted @ 2020-02-17 15:36 无名菜鸟1
阅读(178)
评论(0)
推荐(0)
2020年2月16日
技巧转换+二维单调栈
摘要: https://nanti.jisuanke.com/t/42391 题意:给出两个排列矩阵,问最大相同子矩阵的元素数量。 解法:标记位置,预处理向下扩展和向右扩展。 //#include<bits/stdc++.h> #include <cstdio> #include <cstring> #in
阅读全文
posted @ 2020-02-16 17:22 无名菜鸟1
阅读(217)
评论(0)
推荐(0)
二维单调栈
摘要: http://poj.org/problem?id=3494 题意:给出一个01矩阵,问最大的全为1的子矩阵。 解法:将预处理后,将每一列(行)看成一维单调栈。 //#include<bits/stdc++.h> #include<iostream> #include<stdio.h> #inclu
阅读全文
posted @ 2020-02-16 16:50 无名菜鸟1
阅读(355)
评论(0)
推荐(0)
2020年2月12日
单调栈(区间最小值乘以区间间和)
摘要: http://poj.org/problem?id=2796 题意:给出一个序列,求出一个子序列,使得这个序列中的最小值乘以这个序列的和的值最大。 解法:单调递增栈:每一个元素进栈前将元素剔除的过程是该元素在向左扩展,每一个元素在站内被某一元素剔除的过程为该元素的右扩展。 //#include<bi
阅读全文
posted @ 2020-02-12 19:06 无名菜鸟1
阅读(580)
评论(0)
推荐(0)
单调栈(两边扩展)
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=1506 题意:给出连续的一组宽度为1,高为a[i]的长方形 , 问整个图所能构成的面积最大的长方形。 解法:单调递增栈记录以每一个值为最小值的两边扩展的最大值。比较以每一个值为最小值组成长方形面积的最大值。 //#
阅读全文
posted @ 2020-02-12 18:05 无名菜鸟1
阅读(158)
评论(0)
推荐(0)
单调栈(向右扩展)
摘要: https://blog.csdn.net/wcxyky/article/details/97617893?utm_source=app 1.给定一组数,针对每个数,寻找它和它左边第一个比它小的数之间有多少个数。 2.给定一序列,寻找某一子序列,使得子序列中的最小值乘以子序列的长度最大。 3.给定一
阅读全文
posted @ 2020-02-12 17:46 无名菜鸟1
阅读(202)
评论(0)
推荐(0)
计数区间异或为0(不可交)
摘要: https://www.cnblogs.com/Harley-Quinn/p/7513052.html 题意:给一组数n,求区间异或和为0且任意区间不交的数量 解法:贪心两区间都为0选右边界小的区间,会使得答案更优 #include <iostream> #include <vector> #inc
阅读全文
posted @ 2020-02-12 01:02 无名菜鸟1
阅读(392)
评论(0)
推荐(0)
上一页
1
···
6
7
8
9
10
11
12
13
14
···
25
下一页
公告