E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
ACM_基础DP
ACM_
线段树模板(单点更新)
区间更新的题别用会时间超限#definelchildleft,mid,root>sum[root];//cout>1;build(lchild);//递归建立左右子树build(rchild);update(root);//更新父节点的sum,计算left~right这个区间的士兵数量}voidoperate(intleft,intright,introot,inttag,intoper){if(
知足--常乐
·
2020-08-26 12:05
ACM总结与模板
ACM_线段树
ACM_
线段树模板(区间更新)
firstcode(求总和):#include#includeusingnamespacestd;#definelchildleft,mid,root>1;build(lchild);build(rchild);update(root);}voidoperate(intl,intr,intc,intleft,intright,introot){if(l=right){lazy[root]=c;su
知足--常乐
·
2020-08-26 12:05
ACM总结与模板
ACM_线段树
免费馅饼(
基础DP
)
都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼。说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁的10米范围内。馅饼如果掉在了地上当然就不能吃了,所以gameboy马上卸下身上的背包去接。但由于小径两侧都不能站人,所以他只能在小径上接。由于gameboy平时老呆在房间里玩游戏,虽然在游戏中是个身手敏捷的高手,但在现实中运动神经特别迟钝
西柚-Sunshine
·
2020-08-25 05:52
最少拦截系统(
基础DP
)
某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能超过前一发的高度.某天,雷达捕捉到敌国的导弹来袭.由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹.怎么办呢?多搞几套系统呗!你说说倒蛮容易,成本呢?成本是个大问题啊.所以俺就到这里来求救了,请帮助计算一下最少需要多少套拦截系统.I
西柚-Sunshine
·
2020-08-25 05:21
HDU 1087 Super Jumping! Jumping! Jumping!(最大递增子串和)
题目链接:[kuangbin带你飞]专题十二
基础DP
1E-SuperJumping!Jumping!Jumping!
shiyicode
·
2020-08-25 04:50
动态规划
算法刷题之旅
A - Max Sum Plus Plus HDU - 1024——
基础dp
Think:1知识点:
基础dp
2题意:n个数分成m部分的最大值二维表示dp[i][j]:j个数分成i部分的最大值状态转移方程dp[i][j]=max(dp[i][j-1]+a[j],max(dp[i-1
leoxry
·
2020-08-24 21:21
知识体系
错误反思
题意思考
基础dp
Eating Together(最长递增子序列和最长递减子序列(
基础dp
))
这道题,我又把
基础dp
复习了一遍,因为我的dp太弱了。首先把题读懂,最关键的就是都为单增或单减,所以明摆着求著名问题最长上升子序列和最长下降子序列,然后比大小就出来了!
Forward in time
·
2020-08-23 07:04
dp
HDU 1024 Max Sum Plus Plus
题目链接:[kuangbin带你飞]专题十二
基础DP
1A-MaxSumPlusPlus题意给n个数,将其分为m部分,各部分之间不能有交叉重叠,求最大和思路dp[i][j]表示前j个数分为i部分的最大和,
shiyicode
·
2020-08-23 02:45
动态规划
算法刷题之旅
洛谷P1048 采药 #01背包
基础DP
#
题目描述辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”如果你是辰辰,你
SDUWH_2U
·
2020-08-23 02:30
XOJ
题解
动态规划
[kuangbin带你飞]专题十二
基础DP
题解
MaxSumPlusPlusHDU-1024既然是动态规划,那么每个数字都有机会选上。每个数字,要不添在前一个连续区间构成数目不变的区间,要不就重新新开一个区间。我们可以写出状态转移方程:dp[i][j]=max(dp[i][j−1],max(dp[i−1][m](m>i)))dp[i][j]=max(dp[i][j-1],max(dp[i-1][m](m>i)))dp[i][j]=m
KineXense
·
2020-08-22 04:24
[kuangbin带你飞]
简单及经典dp
Mark一下, dp状态转移方程写对,但是写代码都错,poj 1651 poj 1179
dp题:1、写状态转移方程;2、考虑初始化边界,有意义的赋定值,还没计算的赋边界值;3、怎么写代码自底向上计算最优值今天做了几个
基础dp
,全部是dp方程写对但是初始化以及计算写错先是poj1651其实就是个赤裸裸的矩阵连乘
Z-Pilgrim
·
2020-08-22 03:41
DP
kuangbin专题十二
基础dp
总结
做这个专题的时候感觉好迷。一度被题恶心到了。。这题把所有不是独立思考做出来的题贴出来吧。A-MaxSumPlusPlus题解:dp[i][j]代表前i个数在必须选第i个的前提下组成j组的最大值。那么方程为:dp[i][j]=max(dp[i-1][j]+a[i],dp[k][j-1]+a[i])(k=j-1).由于n特别大,我们不可能开二维数组。其次,我们再看它的复杂度,O(n*m*n),肯定超时
大学要有梦想
·
2020-08-22 02:17
kuangbin专题总结
【kuangbin带你飞
基础DP
专题】 简要题解
biubiubiu第一次尝试一天rush一套专题(由于这套简单一些),14个小时完成了,现在来补一下当时卡住的题或者比较有意思的题的题解。HDU1029http://acm.hdu.edu.cn/showproblem.php?pid=1029这个题是一个非常经典的裁判官问题,有o(n)时间o(1)空间的解法,原理是根据如果这个数列中存在一个出现次数超过n/2的数字,只要每次拿出两个不同的数,最后
lajiyuan_
·
2020-08-22 00:46
DP
基础DP
1 HDU1024+HDU 1074
HDU1074链接:http://acm.hdu.edu.cn/showproblem.php?pid=1024题意:给定一个数组求其分成m个不相交的子段和最大问题;做法(这里是看kuangbin的做法的)设Num为给定数组,n为数组中的元素总数,Status[i][j]表示前i个数在选取第i个数的前提下分成j段的最大值,其中1#include#include#includeusingnamesp
德鸭
·
2020-08-21 04:59
dp
HDOJ1114 Piggy-Bank #完全背包
基础DP
#
Piggy-BankTimeLimit:2000/1000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):41880AcceptedSubmission(s):20617ProblemDescriptionBeforeACMcandoanything,abudgetmustbepreparedandthe
SDUWH_2U
·
2020-08-21 01:29
XOJ
~最长递增子序列(LIS)~~~~树状DP
LIS问题解决方法有很多,而树状DP是其中一种比较高效的方法,树状DP的实现要从
基础DP
开始。先引入一个模板题:题目:“最少拦截系统”某国有一种导
HAUT_Xjl
·
2020-08-20 03:44
算法
ACM_
求相邻最小素数
Describtion胖胖斌的数学不太好,这天数学老师要让他在L和U(1usingnamespacestd;typedeflonglongll;constllmaxn=100000;llprime[maxn],t=0;llminc=10000;llprime2[maxn],cnt=0;llisprime[maxn];llL,P;llflag;intloc=0;voidinit(){memset(i
lancecrazy
·
2020-08-19 06:47
❥ACM学习
hdu1074
[kuangbin带你飞]专题十二
基础DP
1D题题意:有n项作业,每项作业需要时间c去完成,截至日期是在d,每一项作业每超过截至时间就会扣1分,现在问如何安排作业能使得扣的分最少,并且当扣分相同时,要选择字母序最小的那个作业安排
是Mally呀!
·
2020-08-18 09:54
ACM解题笔记
ACM_
程序设计竞赛:DP:01背包
01背包设n个重量和价值为wi和vi的物品,从中选择总重量不超过W的物品,求挑选方案中价值总和最大输入:n=4(w,v)={(2,3),(1,2),(3,4),(2,2)}w=5输出7(选择0,1,3)//暴力算法//O(2^n)#includeusingnamespacestd;constintmaxn=100;intw[maxn],v[maxn];intn,W;intrec(inti,intj
LandscapeMi
·
2020-08-18 08:42
挑战程序设计竞赛
ACM_
模板_背包问题
背包问题是属于动态规划中的一种非常经典的运用,小编在这里大力推荐dd_engi的背包九讲,这种超级详细的讲解在小编心中是可以得到诺贝尔文学奖的~1.01背包首先是最基础的01背包问题,所有元素只能使用一次,此问题只需要考虑第i件物品的策略(放或不放),那么就可以转化为一个只牵扯前i-1件物品的问题。如果不放第i件物品,那么问题就转化为“前i-1件物品放入容量为v的背包中”,价值为f[i-1][v]
RaAlGhul
·
2020-08-18 08:30
ACM_算法_模板
UVA 1347 Tour(
基础dp
)
题目链接刘汝佳紫书上dp的例题。非常nice的思路是不考虑走过去再回来而是两个人同时走,此时状态难以表示的地方是已经走过的地方,而书中又非常巧妙地用d(i,j)表示第1个人在i,第2个人在j,1-max(i,j)已经走过。还要求i>j,所以这就很完美的表示出了状态,每次只有两个决策,要么第一个人走到i+1,要么第二个人走到i+1。所以清楚了状态和决策就可以开始写代码了。下面是记忆化搜索。#incl
ナナ色のブランク
·
2020-08-18 07:48
动态规划
dfs
动态规划
欧拉函数介绍与使用 c++
title:欧拉函数author:BbiHHtags:
ACM_
汇总‘’categories:数论欧拉函数toc:truedate:2019-07-3020:46:00(原创)定义φ(n)表示1~n中与x
BbiHH_
·
2020-08-18 02:10
ACM摸鱼
并查集模板 c++
title:并查集author:BbiHHtags:
ACM_
汇总categories:template并查集date:2019-08-1316:16:00(原创)板子#includeusingnamespacestd
BbiHH_
·
2020-08-18 02:39
ACM摸鱼
lightoj刷题日记
1000GreetingsfromLightOJ【简单A+B】1001OppositeTask【简单题】1002CountryRoads【搜索题】1003Drunk【判环】1004MonkeyBananaProblem【
基础
weixin_30535565
·
2020-08-17 19:51
C++中的STL简介
title:STL简介tags:
ACM_
汇总‘’categories:STL数据结构入门author:BbiHHtoc:truedate:2019-07-2910:44:00(原创)STLSTL是StandardTemplateLibrary
BbiHH_
·
2020-08-17 18:43
ACM摸鱼
HDU 2084 数塔(
基础dp
)
这题是一个基础动态规划,入门题目,思路很简单,就是从下往上找一条最优路径即可,转移公式也很简单,就是挑最大的情况进行存储。这里博主使用了最基础的二维数组来处理这题,其实这题还可以用一维滚动数组来优化空间,但是鉴于二维数组比较好理解,所以这里我就使用了二维数组处理。#includeinta[110][110];intmax(inta,intb){if(a>b)returna;returnb;}int
tick_tokc97
·
2020-08-17 02:41
ACM-动态规划
ACM_
搜索:杭电oj2717:Catch That Cow
题目传送门:http://acm.hdu.edu.cn/showproblem.php?pid=2717题目大意:给定两个x轴方向上的位置,农民有三种方式,用bfs找到最短路径即可.AC代码:#include#include#include#include#include#include#include#include#includeusingnamespacestd;#defineSize100
闭上左眼看世界
·
2020-08-17 02:31
ACM_搜索遍历
【洛谷】P1754 球迷购票问题(
基础dp
)
题目背景盛况空前的足球赛即将举行。球赛门票售票处排起了球迷购票长龙。按售票处规定,每位购票者限购一张门票,且每张票售价为50元。在排成长龙的球迷中有N个人手持面值50元的钱币,另有N个人手持面值100元的钱币。假设售票处在开始售票时没有零钱。试问这2N个球迷有多少种排队方式可使售票处不致出现找不出钱的尴尬局面。题目描述例如当n=2是,用A表示手持50元面值的球迷,用B表示手持100元钱的球迷。则最
weixin_30678821
·
2020-08-16 15:44
数据结构与算法
Teamwork Gym - 101492E
基础dp
【例题6】在一个夜黑风高的晚上,有n(n<=50)个小朋友在桥的这边,现在他们需要过桥,但是由于桥很窄,每次只允许不大于两人通过,他们只有一个手电筒,所以每次过桥的两个人需要把手电筒带回来,i号小朋友过桥的时间为T[i],两个人过桥的总时间为二者中时间长者。问所有小朋友过桥的总时间最短是多少。参考http://blog.csdn.net/acm_jl/article/details/5103355
sega_handsome
·
2020-08-16 13:45
简单基础经典dp
HDU-1069 Monkey and Banana(
基础DP
)
MonkeyandBanana题意:一组研究人员正在设计一项实验,以测试猴子的智商。他们将挂香蕉在建筑物的屋顶,同时,提供一些砖块给这些猴子。如果猴子足够聪明,它应当能够通过合理的放置一些砖块建立一个塔,并爬上去吃他们最喜欢的香蕉。研究人员有n种类型的砖块,每种类型的砖块都有无限个。第i块砖块的长宽高分别用xi,yi,zi来表示。同时,由于砖块是可以旋转的,每个砖块的3条边可以组成6种不同的长宽高
蔡瑞阳
·
2020-08-16 12:21
动态规划
hdu 1260 Tickets(
基础dp
)
题目链接:点击打开链接题意:售票给k个人,每次售票时,可以单独售票给一个人,也可以售票给相邻的两个人。开始理解错了,以为可以一次售票给连续的多个人,原来题意说的是连续的两个人,所以是不能一次售票给大于两个人的。错误代码:#include#include#includeusingnamespacestd;intnum[2005],adj[2005],dp[2005][2];//dp[i][0]:表示
ccDLlyy
·
2020-08-16 12:19
动态规划
HDU 1260 Tickets(
基础DP
)
大概意思是有一个售票员想早些回家,所以他卖票的时候可以一次卖一个人的,也可以一次卖连续两个人的票,所花费的时间不同。现在给出所有要买票看电影的人买票花费时间以及连续两人买票花费的时间,求售票员最早下班的时间。dp[i]代表卖完第i个人的票所花费的最小时间,可以得出dp[i]=min(dp[i-1]+dan[i],dp[i-2]+he[i-1]),dan[i]代表第i个人单独购买的时间,he[i]代
神奇豆子
·
2020-08-16 12:40
动态规划
蓝桥杯 算法训练 乘积最大(
基础dp
)
问题描述今年是国际数学联盟确定的“2000——世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年。在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你的一个好朋友XZ也有幸得以参加。活动中,主持人给所有参加活动的选手出了这样一道题目:设有一个长度为N的数字串,要求选手使用K个乘号将它分成K+1个部分,找出一种分法,使得这K+1个部分的乘积能够为最大。同时,为了帮助选手能够正
我好想逃
·
2020-08-16 10:10
DP
第三周训练赛题解
这次题目加强了搜索的练习,还有一些小技巧和基本方法,加了一道
基础DP
居然没人A确实是意料之外,C题的裸DFS也是很迷。蓝桥杯以爆搜为主,近期会加强搜索训练,做好准备。
weixin_30414305
·
2020-08-15 16:17
HDU1260-
基础DP
-H - Tickets
https://vjudge.net/contest/170788#problem/H给定n个人他们独自购票的时间和他们临近人买票的时间,问你如何选择,可以使时间最短。得到状态转移方程。dp[i]=min(dp[i-1]+单人i,dp[i-2],双人);#include#include#include#includeusingnamespacestd;constintmaxn=4000;intb[
左佥都御史
·
2020-08-15 15:50
动态规划
HDU ~ 1260 ~ Tickets (
基础DP
)
题意:现在有n个人要买电影票,如果知道每个人单独买票花费的时间,还有和前一个人一起买花费的时间,问最少花多长时间可以全部买完票。Input给出N(1usingnamespacestd;constintMAXN=2005;constintINF=0x3f3f3f3f;intn,a[MAXN],b[MAXN],dp[MAXN];intmain(){intT;scanf("%d",&T);while(T
张松超
·
2020-08-15 13:46
【基础dp】
[
ACM_
模拟] ZJUT 1155 爱乐大街的门牌号 (规律 长为n的含k个逆序数的最小字典序)...
Descriptionycc喜欢古典音乐是一个ZJUTACM集训队中大家都知道的事情。为了更方便地聆听音乐,最近ycc特意把他的家搬到了爱乐大街(德语Philharmoniker-Straße)。在爱乐大街上,依次坐落着N座跟音乐有关的建筑,比如音乐厅、歌剧院等建筑。走在爱乐大街的路上,ycc感到非常满意。过了一会儿,ycc开始对这些建筑的门牌号产生了兴趣,这N个建筑各自有唯一的门牌号,范围从1到
weixin_34014555
·
2020-08-15 08:24
[kuangbin]专题之
基础dp
| 题解与总结
由于题目比较多,就只发一下题目意思和思路+代码,最后总结一下.A-MaxSumPlusPlusHDU-1024NowIthinkyouhavegotanACinIgnatius.L's"MaxSum"problem.TobeabraveACMer,wealwayschallengeourselvestomoredifficultproblems.Nowyouarefacedwithamoredif
一只酷酷光儿( CoolGuang)
·
2020-08-14 07:07
kuangbin题解整理
其他dp(线性
思维
etc)
ACM_
最短路讲解
###Dijkstra算法1.定义概览Dijkstra(迪杰斯特拉)算法是典型的单源最短路径算法,用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法是很有代表性的最短路径算法,在很多专业课程中都作为基本内容有详细的介绍,如数据结构,图论,运筹学等等。注意该算法要求图中不存在负权边。问题描述:在无向图G=(V,E)中,假设每条边E
知足--常乐
·
2020-08-14 06:46
ACM总结与模板
ACM_最短路
Kuangbin 第12套
基础DP
部分题题解
1.Maxsumplusplus本题是一个M段子段的最大字段和的问题,也就是把一个数列分成M小节使得每小节总和最大。关于这个问题先从最大子段和(单段)开始说起。最大子段和(子段是连续子数列)的求解意味着对于数列中一个元素,要么归于前面已经成型的一个子段,要么自成一派创立新的子段。这个抉择取决于这两个的权值的大小,如果成型的子段的和较大,那么就让它加入前面的子段,否则就自己作为新子段的开头。方程:D
西行妖下的亡灵
·
2020-08-13 22:04
动态规划题解
csustOJ1077走格子(
基础DP
)
Description对于一个n*m的方格,你初始时站在左上角,你每次移动只能往下或向右移动一个单位,问你从左上角移动到右下角的方案有多少种。Input多组输入。每组数据输入两个数n,m(1#includeusingnamespacestd;longlongdp[35][35];intmain(intargc,char*argv[]){intn,m;while(~scanf("%d%d",&n,&
weixin_30572613
·
2020-08-13 11:58
ACM_
总论_ACM界的教主级别人物
AC大牛!ACRush:江湖人称“楼教主”,真名楼天城,毕业于杭州十四中,是目前公认的中国计算机程序设计竞赛第一人,经常以一人单挑全场所有队而无往不胜,现于清华大学理论计算机中心随姚期智院士攻读博士。在世界各场个人赛与团队赛中,ACRush这个ID总是伴随着一种叫作BUG的东西同时出现。自2001年起参赛的楼教主,摘取各种竞赛桂冠数不胜数。在近五年的重要比赛中,连续获得两次百度之星决赛冠军,GCJ
essencelite
·
2020-08-12 16:28
ACM_总论
Sum nyoj 欧拉定理简单运用(数论入门)
描述给你一个数N,使得在1~N之间能够找到x使得x满足gcd(x,N)>=M,求解gcd(x,N)的和输入多组测试数据每行输出两个数N,M(N,M不超int)输出输出sum样例输入53样例输出5上传者
ACM
iwi_ac
·
2020-08-12 16:44
C.How_to_Fail_at_Programming_Contest
title:C.How_to_Fail_at_Programming_Contestdate:2019-10-0522:20:11categories:ACMtags:背包
基础dp
最近比赛碰到了一道背包问题
void_id:)
·
2020-08-11 13:45
oj题目
基础dp
例一、数字三角形设dp[i][j]表示坐标为(i,j)的点到底边的最大距离,则dp[i][j]=max(dp[i+1][j],dp[i+1][j+1])+a[i][j]dp[i][j]=max(dp[i+1][j],dp[i+1][j+1])+a[i][j]dp[i][j]=max(dp[i+1][j],dp[i+1][j+1])+a[i][j]#include#include#definerep
Cheng Yu
·
2020-08-11 12:45
基础dp
acm_
十进制转二进制
题目:ProblemDescriptionGiveyouanumberonbaseten,youshouldoutputitonbasetwo.(0<n<1000)InputForeachcasethereisapostivenumbernonbaseten,endoffile.OutputForeachcaseoutputanumberonbasetwo.SampleInput123
清风徐来---
·
2020-08-11 01:14
ACM
这个是转的。学完就删_(:з」∠)_
blog.csdn.net/cc_again/article/details/25866971好多dp:http://blog.csdn.net/cc_again/article/category/1261899一、简单
基础
weixin_34234829
·
2020-08-10 23:47
POJ 3186 Treats for the Cows
题目链接:[kuangbin带你飞]专题十二
基础DP
1O-TreatsfortheCows题意给长度为n的序列,每次只能从首或尾取一个数,第i次取的数权值为(数值*i),求取完所有的数可以达到的最大权值
shiyicode
·
2020-08-10 21:34
动态规划
算法刷题之旅
合唱队形(
基础dp
,最长上升子序列)
这道题我感觉以前好像我遇见过,嘻嘻;这个可以直接求以这个数的左右两边的最长上升子序列中元素的个数,然后用n-(个数-1),每次取最小值就行了;对于最长子序列的dp定义:dp[i]=max(dp[i],dp[j]+1);其中dp[i]初始化都为1,因为自己本身就算一个;然后j是0usingnamespacestd;typedeflonglongll;intn,a[200],b[200];intdp1
Forward in time
·
2020-08-10 20:49
dp
hdu 1004 Max Sum
基础dp
题目链接最大子序列和。输出起始位置。#include#include#includeusingnamespacestd;#defineN100005#defineinf0x3f3f3f3finta[N];intdp[N];intpre[N];intmain(){intT,iCase=0;scanf("%d",&T);while(T--){intn;scanf("%d",&n);for(inti=1
古宇hhhh
·
2020-08-10 19:47
动态规划
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他