自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 动态dp坑爹记录。。。。常数巨大

最近在学个玄学东西,动态dp。在这里稍微记录一下抛个序列上的动态dp题(树上的还不怎么会写,太玄学了。。。)带单点修改的最大字段和普通的状态转移嘛。。很简单动态dp这玩意是构造矩阵嘛。。然后把各种转移玄学的改成(乘法???)运算,这里的(乘法)必须满足结合律可这玩意咋构造矩阵呢。。。大家应该都知道斐波那契数列矩阵构造,很简单可这玩意是f[i]=f[i-1]+...

2019-12-15 19:30:48 125

原创 最小边权和 (带限制条件的最短路,动态规划)

1721:最小边权和时间限制: 1000 ms 内存限制: 524288 KB提交数: 50 通过数: 18【题目描述】有一张nn个点mm条边的有向图,每条边有一个互不相同的边权ww,有qq个询问,要求你从点aa经过不超过cc条边到点bb,要求经过的边权不下降且和尽量小,求出满足条件的最小的边权和,如果没有合法方案则输出−1−1。【输入】第一行三个...

2019-09-01 18:10:45 1599

原创 数列上相向搜索

给一个长度为n的数列,和一个数k求数列中满足两个数和<=k的对数首先排序,然后弄两个指针搜索#include<cstdio>#include<algorithm>using namespace std;int n,k;int a[1000000];int main(){ scanf("%d%d",&n,&k); ...

2019-08-31 22:20:36 115

原创 最短路图(dijkistra)

给定一张有向图,起点s,终点t求s到t的所有最短路组成的DAG(没有负环的最短路图一定是DAG)之前蒟蒻的我使用前缀指针然后dfs。。。。其实有更为简洁巧妙地方法首先需要建一张正向图(这不是废话吗),然后还需要建一张反向图dis1[] 表示正向图上点s到所有点的最短距离,dis2[]表示反向图上点t到所有点的最短距离考虑正向图上的一条边(edge){u,v,w}如何判断这条...

2019-08-31 15:54:48 1042

原创 最小环(floyd)

求带有点权的最小环,有向图无向图皆可#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int g[205][205];int price[205];int n,m;int main(){ memset(g,0x3f,sizeof g); ...

2019-08-31 12:30:10 148

原创 最小环(dijkistra)

针对有向图,求经过点s的最小环,只需要用点s松弛后再把dis[s]=inf,然后下一次取到点s后,dis[s]就是经过点s的最小环#include<cstdio>#include<algorithm>#include<cstring>#include<queue>using namespace std;const int inf=0x...

2019-08-31 12:28:05 449

原创 次短路计数

1716:次短路计数时间限制: 2000 ms 内存限制: 65536 KB提交数: 86 通过数: 16【题目描述】给定一张包含nn个点、mm条边的有向图,并且给定起始点ss和终点tt,求从ss到tt的最短路线和比最短路线多一个单位距离的路线的总方案数。(两条路线A、BA、B不同当且仅当存在一条边∈A∈A且∉B∉B)。【输入】输入包含多组数据。...

2019-08-29 19:37:26 332

原创 二分求两个有序数组归并后第k小的数

如标题,比如两个数组a=[1,2,3]b=[4,5,6]k=5 ,然后归并后就是[1,2,3,4,5,6] 第5小是5显然按照归并排序的方式可以O(n)求,可是这样顺便把所有的k对应的答案都求出来了,浪费了时间,如何在O(logn)的复杂度求出?首先我们令x=在a数组取出的个数y=在b数组取出的个数总共取出了从小到大的k个,显然k=x+y然后呢,我们令x为二分的...

2019-08-19 21:36:46 368

原创 软件开发 software 二分答案+dp

【题目描述】一个软件开发公司同时要开发两个软件,并且要同时交付给用户,现在公司为了尽快完成这一任务,将每个软件划分成mm个模块,由公司里的技术人员分工完成,每个技术人员完成同一软件的不同模块的所用的天数是相同的,并且是已知的,但完成不同软件的一个模块的时间是不同的,每个技术人员在同一时刻只能做一个模块,一个模块只能由一个人独立完成而不能由多人协同完成。一个技术人员在整个开发期内完成一个模块以后...

2019-08-14 21:56:15 387

原创 树上带权lca

最近有一次考试有两个测试点是裸的树上带权lca,然而我那10分都没有拿到,我真菜的可以问题简单描述:给你一棵树,树的边都有边权,有很多询问,求两点之间的距离首先看下面一个例子我们以1为树根,然后我们设置一个数组dep[ ]表示从根出发每个节点的深度,例如dep[1]=1,dep[2]=2,dep[3]=2...再设置一个数组dis[ ]表示从根节点出发到每个点的距离 ,例如di...

2019-08-14 11:02:09 490

原创 快速幂,快速加

先把问题抛出。快速幂:求mod m的值 a<=5000,b<=1e9m<=50快速加:求a*b mod m得值 a<=1e10 ,b<=1e10 m<=50朴素算法稳爆炸,就不说了快速幂:求等价于 if b%2==1 if b%2==0那么就可以写出如下递归函数int pow(int x,int y){ if(y...

2019-08-11 11:31:51 298

原创 贪心,并查集 游戏通关

【题目描述】XY在玩一个包含NN个任务的游戏。每个任务完成时限为TiTi(你可以认为还没开始做任务时的时间为00),奖励为WiWi。由于XY技术的娴熟以及任务的简单,对于每个任务,他都可以在一个单位时间内完成。XY想要知道他能够获得的最多的奖励。【输入】第一行一个整数NN,表示需要完成的任务数目。接下来NN行,每行两个整数T、WT、W,分别表示完成这个任务的最后期限和完成...

2019-08-11 00:23:04 349

原创 树状数组看似神奇的应用,求逆序对,离散和非离散

最近学了一些看似玄学的算法,之所以说玄学是因为我太蒟蒻了。首先来说说求逆序对,经典的归并排序方法就不谈了,这里来谈谈树状数组求逆序对。首先看看这份代码#include<iostream>#include<algorithm>using namespace std;int a[100000];int c[100000];int n;int lowbit(...

2019-08-10 15:07:28 100

原创 单调栈求直方图最大子矩形

最近了解了一下单调栈这玩意,然后做下笔记。就以一个经典的问题来说吧。https://www.nowcoder.com/questionTerminal/13ba51c3fec74b58bbc8fa8c3eedf877这题一开始写来写去一直写挂了,后来网上看了下大佬的解法自己也学会了。#include<iostream>#include<algorithm>...

2019-08-10 13:37:14 119

空空如也

空空如也

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

TA关注的人

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