自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 区间DP详解

1、acwing 282 石子合并 区间dp基础题设有 N 堆石子排成一排,其编号为 1,2,3,…,N。每次只能合并相邻的两堆,合并的代价为这两堆石子的质量之和,合并后与这两堆石子相邻的石子将和新堆相邻,合并时由于选择的顺序不同,合并的总代价也不相同。例如有 4 堆石子分别为 1 3 5 2, 我们可以先合并 1、2堆,代价为 1+3=4,得到 4 5 2,第二步是先合并 2,3 堆,则代价为 5+2=7,得到 4 7,最后一次合并代价为 4+7=11,总代价为 4+

2021-08-11 11:09:39 382

原创 线段树总结

1、acwing 245 线段树 + 思维题面:给定长度为 N 的数列 A,以及 M 条指令,每条指令可能是以下两种之一:1 x y,查询区间 x, y 中的最大连续子段和,即 maxx≤l≤r≤y∑i=lrA[i]max_{x≤l≤r≤y} {\sum_{i=l}^{r}A[i]}maxx≤l≤r≤y​∑i=lr​A[i]2 x y,把 A[x]的值改成 y。解法两个操作分别为:区间查询、单点修改 ---- 线段树最大连续字段和:2 ,-1,3 ,sum=3,思考方法:

2021-07-10 15:27:04 143

原创 树状数组总结

1、acwing 241 楼兰图腾 树状数组-基础题题面:相传很久以前这片土地上(比楼兰古城还早)生活着两个部落,一个部落崇拜尖刀(V),一个部落崇拜铁锹(∧),他们分别用 V 和 ∧ 的形状来代表各自部落的图腾。西部 在楼兰古城的下面发现了一幅巨大的壁画,壁画上被标记出了 n 个点,经测量发现这 n 个点的水平位置和竖直位置是两两不同的。西部 认为这幅壁画所包含的信息与这 n 个点的相对位置有关,因此不妨设坐标分别为 (1,y1),(2,y2),…,(n,yn)(1,y1),(2,y2),…,(n

2021-07-10 15:23:51 127

原创 状压dp知识点

状压dp知识点1、二进制基本技巧:1:判断二进制上某一位是不是1: if( x>>i&1 == 1 ) 右移i位和1相与 2:将二进制第i位改为1: x = x | (1<<i);3:将二进制第i位反转: x = x ^ (1<<i);4:把二进制从右数第一个“1”舍弃: x = x & (x-1);5:在二进制下,判断a与b,若b的位数中是1时,不允许a的位数中有0 a &

2021-03-17 23:52:01 109

原创 POJ-3267 字符串dp

POJ-3267 The Cow Lexicon 字符串dp题面:Few know that the cows have their own dictionary with W (1 ≤ W ≤ 600) words, each containing no more 25 of the characters ‘a’…‘z’. Their cowmunication system, based on mooing, is not very accurate; sometimes they hear wor

2021-02-23 15:05:23 88

原创 Codeforces Round #698 D. 裴蜀定理(数论)

Codeforces Round #698 D. 裴蜀定理https://codeforces.com/contest/1478/problem/D题意:有n个互不相同的数字在黑板上,多次重复如下操作:选取黑板上任意两个数x,y,(可以相同),将 2x-y 放回黑板上,(x,y依然存在),问经过无数次上述操作后,黑板上是否存在数字 k ?思路:​ 1:由观察可知,2x-y , 2(2x-y) - y, 2x-(2x-y) … 都有一个规律:系数和总是为 1​ 所以答案的标

2021-02-04 09:48:00 131

原创 C. Longest Simple Cycle 线性DP

C. Longest Simple Cycle 线性DPEducational Codeforces Round 103 (Rated for Div. 2)https://codeforces.com/contest/1476/problem/C看似是道图论题,就想用dfs暴搜或dfn记录遍历次序是不可取的这题最关键的还是用到线性DP的思想,明确自己定义的dp[i]的含义dp[i] : 加上第i条边后,所拥有的最长路径的值这时分类讨论就不难了:​ 1:当a[i] == b[i] 时,无法继承

2021-02-03 10:07:48 213 1

原创 pip Fatal error in launcher: Unable to create process using :问题解决方案

pip Fatal error in launcher: Unable to create process using :问题解决方案一般是将python包移动到D盘或其它地方产生的错误!解决步骤:1:更改环境变量:这个弄过python应该都会 --环境变量 —系统变量 —path更改2:改完以后cmd中 --pip依旧报错,原因:pip.exe中有指向原地址的代码模块3:使用HEdit进行十六进制的修改 (文末赋地址)4:使用”望远镜“选项:寻找原地址,我原本安装在C盘,直接寻找C就行将如

2021-01-16 12:07:52 2476 4

原创 2019ICPC区域赛南昌 C - And and Pair

2019ICPC南昌 C - And and Pair一:题目:一个巨大的数 n 可表示为由0、1组成的字符串s,寻找可能的数对 ( i , j ) ,满足条件:1:$ 0 <= j <= i <= n $2: $ i & n = i$3: $ i&j = 0$求每个n最多有多少数对(i,j)其中字符串S长度限定为 0<=length<=1050 <= length <= 10^50<=length<=105

2021-01-13 13:43:16 202 1

原创 数据库系统第八章总结

数据库系统第八章总结目录:1:嵌入式SQL2:函数3:存储过程4:游标8.2:函数系统内置函数:确定性与非确定性用户定义函数:1:标量函数2:内嵌表值函数3:多语句表值函数语法:1:标量函数:create function + 函数名(变量1, 变量2)returns + 类型asbegindeclare @参数 类型select ...return + @参数end例:total函数CREATE FUNCTION TOTAL(@expr1 AS int,@e

2020-11-19 21:40:18 902

原创 ACM算法模板--2020总结

ACM算法模板–2020总结写在前面:​ 几个月来学习了很多有趣的算法,但由于最近课业忙碌,无暇再顾及新的算法。打开笔记本,发现里面的算法笔记东零西落,于是决定整理一番,虽然内容不多,基本上是较为简单的算法,写得较粗糙,敬请笑纳。 (持续更新中)目录:1:基础算法2:图论3:数据结构4:字符串算法(一):基础算法1: java大数import java.math.BigInteger;public static void main(String args[]){ S

2020-11-03 18:16:46 384 1

原创 PAT甲级1127 ZigZagging on a Tree (30分)

PAT甲级1127 ZigZagging on a Tree (30分)题面Suppose that all the keys in a binary tree are distinct positive integers. A unique binary tree can be determined by a given pair of postorder and inorder traversal sequences. And it is a simple standard routine to p

2020-10-29 21:07:52 74

原创 2020CCPC威海站 : H Message Bomb

2020CCPC威海站 : H Message Bomb一:题面:H Message BombWhile we enjoy chatting with friends on the internet, it is always annoying that we are overwhelmed by lots of messages in various chat groups. A great majority of these messages are actually not interestin

2020-10-27 16:48:44 671

原创 数据库各项操作(三)

数据库各项操作(三)目录:1:插入数据2:修改数据3:删除数据4: 视图:​ 建立视图​ 删除视图​ 查询视图1:插入数据格式:insert into + 表名 + values + 常量例1:将一个新学生元组(学号:200215128;姓名:陈冬;性别:男;所在系:IS;年龄:18岁)插入到 Student表中。insert into student(sno, sname, ssex, sdept, sage)values('200215128', '陈东', 'ma

2020-10-20 23:16:22 235

原创 数据库各项操作(二) ----查询

数据库各项操作(二) ----查询目录:1: 单表查询2: 连接查询3: 嵌套查询4: 集合查询1:单表查询格式:select + 需要查询的列 + from + 表名 + where + group by + order by直接来题--先列一下已知的数据库student: sno , sname, ssex, sage , sdept, email,birthcourse : cno , cname, cpno(先修课), ccreditsc : sno, cn

2020-10-20 23:13:05 608

原创 D--String Deletion(双指针+贪心)

D–String Deletion(双指针+贪心)Codeforces Educational Round 96 D题经典的双指针加贪心法题面D. String DeletionYou have a string s consisting of n characters. Each character is either 0 or 1.You can perform operations on the string. Each operation consists of two steps:

2020-10-16 16:20:31 393 1

原创 SQL server各项操作

数据库系统一:数据库与表1:创建数据库1):新建查询中的命令行:CREATE DATABASE student //student数据库on ( name = 'stu', filename = 'stu_data.mdf', size = 5, maxsize = 500, filegrouth = 10%)LOG ON( name = 'stu_log', filename = 'stu_log.ldf', size = 3, filegrouth = 1)2):

2020-10-07 22:33:46 181 2

原创 Java之 IDEA编译器的使用

Java之 IDEA编译器的使用1:新建项目:​ 1):src右键–>标记目录为–>源码 根​ 2):src右键–>新建 包 , 在包文件右键–>新建 java类2:编译 java类文件:​ Add Configuration(右上角)注意:每新建一个Java类文件都需要构建一个编译类型 + :+ --> Application + : 名称:类名 + :主类:pakage名 + 类名...

2020-10-04 17:37:34 762

原创 通过已知遍历建二叉树

通过已知遍历建二叉树唯一确定二叉树三种:中序遍历 + 层序遍历中序遍历 + 前序遍历中序遍历 + 后序遍历1:中序遍历 + 层序遍历建树:具体思路:​ 先遍历层序序列,选取每一个在中序遍历的位置,进行build,​ 但由于一开始无树,建根节点​ 当存在根节点后,此时层序遍历的结点就指向下一个,记为 k (将要插入的)​ 再次遍历中序序列,直到查找到与root的值相同的位置,记为 u (已经存在的)​ 如果 k < u , 向左子树插入, 反之,向右子树插入int level[1

2020-10-04 17:32:11 123

原创 病毒侵袭(HDU-2896)

病毒侵袭(HDU-2896)HDU - 2896AC自动机模板题题目详情:​ 啊是中文的,那就不解释了​ 就是关于多个串匹配一个文本串,不过这题的坑真不少!!!坑:以上字符串中字符都是ASCII码可见字符(不包括回车)。​ 要用 vis数组来判断,不能直接 word[i]==1​ 输入中的空格不用理会 估计是数据太弱​ 要记得排序这题算是一道模板吧,时间有点仓促,下次好好整理整理#include <bits/stdc++.h>#define maxn 11000

2020-09-23 18:43:05 309

原创 线段树(segment tree)

线段树(segment tree)一:基本操作1:建树线段树的每个父节点均为一个范围,故称之为线段树struct node{ int l,r,weight,mark; //左孩子,右孩子,区间和,延时标记 }tree[maxn*4+10]; //开四倍空间[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ao4Cg2Nm-1600257371662)(file:///C:\Users\15449\Documents\Tencent

2020-09-16 19:57:52 171

原创 PAT甲级1018 Public Bike Management(30分) (测试点5,7坑)

PAT甲级1018 Public Bike Management (30分)(测试点5,7坑)一:涉及的知识点1:dijkstra算法~~(当然堆优化dij也行)~~2:dijkstra中的逆向存点法,即有多条同样短的最短路径,并把他们点全部存下来3:dfs遍历图,不过处理的时候有技巧(测试点5,7)思维题二:题目链接及其大意https://pintia.cn/problem-sets/994805342720868352/problems/994805489282433024There is

2020-09-13 18:41:52 1356 4

原创 Manacher 回文数算法

Manacher算法(统计一个字符串中最大可组成的回文数)1:原理​ 形如 abba,abcba 的字符串中,采用暴力匹配法,遍历每个元素,对该元素作为中心元素,向两侧延申比较(但该做法只适用于奇数串,偶数串无法满足)1:初始化 :由于 奇+偶 = 偶+奇 = 奇数,可以通过添加无关元素法将串变成奇数串。​ abba : #a#b#b#a#, abcba : #a#b#c#b#a# -->都转换为奇数串char s[maxn],s1[maxn*2+10];

2020-09-13 15:45:16 114

原创 codeforces #670 div2 C.Link Cut Centroids(树的重心)

C.Link Cut Centroids(树的重心)树的重心一:定义存在树中的一个结点,当去掉该结点及其所连的边时,会分成多个连通分量,当该节点为重心时,最大连通分量的结点数最少。​ 如下图: 1,2 均为树的重心,删掉1后,最大连通分量节点数为 3(结点2,5,6)​ 二:性质1:删除重心后所得的所有子树,节点数不超过原树的1/2;2:一棵树最多有两个重心,且相邻;3:树中所有节点到重心的距离之和最小,如果有两个重心,那么他们距离之和相等;(有权树)4:树删除或添加一个叶子节点,重心

2020-09-13 15:43:54 214

原创 匈牙利算法---二分图的最大匹配

匈牙利算法—二分图的最大匹配1:概念:​ 匹配:在图论中,一个「匹配」是一个边的集合,其中任意两条边都没有公共顶点;​ 最大匹配:一个图所有匹配中,所含匹配边数最多的匹配,称为这个图的最大匹配;​ 完美匹配:如果一个图的某个匹配中,所有的顶点都是匹配点,那么它就是一个完美匹配;2:原理:​ 先将图化为左右两边(必须为二分图)​ 左侧:n, 右侧:m​ 定义数组:used[]: 标记数组​ s[]: 每个右点与之匹配的左点编号,开始时清零​ 遍历左边各点:1:每次将used标记数

2020-09-13 15:41:00 69

空空如也

空空如也

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

TA关注的人

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