自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(158)
  • 收藏
  • 关注

转载 全排列打表

全排列打表原理:code:#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;/*(1)n个元素的全排列=(n-1个元素的全排列)+(另一个元素作为前缀);(2)出口:如果递...

2019-09-28 17:37:00 204

转载 HDU - 1231 最大连续子序列(基础dp)

最近刷题突然发现vj上还有几道很久以前的attempt题没有解决,所以就当水题把这些题补了....原题链接题意:求给出序列的最大连续子序列,同时输出其区间 (如果有相同的最大值区间,输出 i , j 最小的区间)思路:求最大连续子序列:递推公式 dp[i] = max ( arr[i] , dp[i-1] + arr[i] ) , 表示以 i 结尾的最大连续子序列和。...

2019-09-25 17:57:00 127

转载 Comet OJ - Contest #11 B- usiness

原题链接题意:有 n 天, m 种投资方案,以及余额小于等于 k 时的补贴 f[x] 。每一天可以选择投资方案进行无限次数投资(但要保证余额大于等于0),在n天结束之后投资的回报才会返回。求最大的投资回报为多少。思路:这种投资花钱,然后最后收获可以转化为完全背包问题。同时由于每一天的余额状态多样,所以在每一天开始也要对状态进行转移。设dp[i][j]为 第i天...

2019-09-24 20:50:00 120

转载 2017 Icpc Beijing F - Secret Poems

题意:给你一个矩阵,然后你要按照要求进行读取,以及输出 (折线读取,蛇形输出)思路:找到规律#include <iostream>#include <cstdio>#include <cstring>#include <vector>using namespace std;typedef l...

2019-09-19 20:07:00 81

转载 2018icpc沈阳-K.Let the Flames Begin (约瑟夫环问题)

题意:转化为经典约瑟夫环问题:N个人围成一圈,从第一个开始报数,第K个将被杀掉,最后剩下一个,其余人都将被杀掉。例如N=6,M=5,被杀掉的顺序是:5,4,6,2,3,1。然后现在给出 N(标号1~N)个人,每隔K个将要被杀掉,问第 M 个被杀掉的 标号是多少。(与顺时针或者逆时针无关)。思路:基础递推原理可以参考下博客:https://www.cnblogs.c...

2019-09-19 11:53:00 400

转载 Codeforces Round #585 (Div. 2) B. The Number of Products

尬笑...现场又没做出来,明知道是找出递推规律,最后想不出来,然后 暴力异或模拟TLE了。最后队友想出来一个很秒的方法...看上面这个沙雕图....要计算所有对 正数区间有贡献的(1) 首先是粗红色横线: 对于连续的正数而言,每次正整数的区间如横线对应的方式 计算增加 (倒着往前),所以如果某位置 数为正数 则 positive(连续正数)++(2)然后是细红色线...

2019-09-16 22:42:00 66

转载 字符串部分模板总结

KMPkmp处理题型总结ManacherPOJ - 3974 Palindrome (Manacher模板+讲解)最大最小表示法HDU-3374 String Problem (最小最大表示法)AC自动机AC自动机总结转载于:https://www.cnblogs.com/Tianwell/p/11523410.html...

2019-09-15 17:00:00 70

转载 CF-1209D Cow and Snacks (并查集,图)

原题链接:题意:有N个甜点,和M头牛。每头牛对应有两种喜欢的食物,当牛能够吃到自己喜欢的食物,就会开心,否则不开心。同时每只牛去吃甜点时,会把他喜欢的都吃掉,即只要剩下他喜欢的,他都会吃掉。现在问至少有多少牛会伤心。思路:如果读题不仔细,或许就会往 二分图匹配,网络流这些地方去想(因为都可以解决匹配问题)。但是这里有些不同,即是 一头牛可能会吃多个(多匹配)。不过往图...

2019-09-15 16:05:00 152

转载 Codeforces Round #584 (div.1+div.2)(补题)

CF题解博客:https://codeforces.com/blog/entry/69791?tdsourcetag=s_pcqq_aiomsg补题中...A. Paint the Numbers题意:给一个序列,选出其中某几个数,满足整个序列可以被选择的某个数整除。求最少选择的数个数。思路:暴力枚举所有元素组合(题中值比较小)。code:#inc...

2019-09-15 11:24:00 94

转载 HDU - 6231 - K-th Number (二分+尺取)

题目链接:题意:给出一个长为N的序列,求出所有子序列中的第k大数(子序列长度必然大于等于k)并将其添加到一个新的序列中,求这个新序列的第m大为多少。思路:(本弱鸡打这场模拟赛时没有做出来,太惨了...)首先,看榜过的人不是很多,加上这种 求第k大的数(肯定不会用到 主席数,树状数组),因为求的是所有子区间,加上又有多组样例。所以我就一直想子区间之间的关系,一开始想既然...

2019-09-12 19:04:00 134

转载 (GCJ-2008 Round 3 C) No Cheating(最大独立集)

最近看了下白书,又是收获满满 (PovoP)题意:给你一张M x N 的教室(图),给出能做以及不能做的位置。坐在位置 (x,y) 的学生,可以偷看 左右,两个斜前方四个位置的学生的答案。所以老师为了防止作弊,问在给出考场最多能够安排多少学生。思路:像给出矩阵(邻接表)然后然后放置问题,我们可以想到dfs 以及 二分图。二分图对邻接表建图 常规便是以 建一个行图,列图。然...

2019-09-10 19:11:00 106

转载 (GCJ-2009 Round 2C) Stock Charts (最小路径覆盖)

题意:给出N条折线,最少分多少组使得每组的折线都不互相相交思路:说起相交问题,我不由的想到了计算几何...估计是我最近看计算几何看的走火了。而这道题巧妙的将不相交分组问题转化图的问题。建图这也正是二分图,最大流等图论问题的最难想的地方(巧妙)折线不相交即表示这两条线 一条在上一条在下。如果有一个组符合条件,即是所有的折线都满足 上下关系。这样以来我们就可以 将折线抽象为一...

2019-09-10 18:54:00 122

转载 线段树基础总结

参考题目:A Simple Problem with Integers POJ-3468距离上一次写这道题已经过去两个月了,前天打模拟赛时连线段树都手敲不出来了。所以这次重新来复习一下线段树。这次主要是记录一下对线段树区间修改的理解:一开始我们先是理解线段树的建树原理以及查询原理。利用一个二叉树建立,每个父节点可以记录左右子结点的和或者最大值,以此来维护区间内容。查询也类...

2019-09-09 22:19:00 62

转载 冒泡排序的交换次数 (树状数组)

计算冒泡排序的交换次数:逆序数概念:在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序一个排列中所有逆序总数叫做这个排列的逆序数。 所以冒泡排序结束即是所有的逆序数为0思路:暴力:我们可以开一个vis[]数组记录 在遍历到第 i 位时,已经出现的值有哪些。然后遍历到 arr[i] (第i位的值),得到小于arr[i] 的出现个...

2019-09-09 12:26:00 1255

转载 Comet OJ - Contest #10 C-鱼跃龙门 (扩展GCD+暴力枚举)

题目链接:https://www.cometoj.com/contest/65/problem/C题意:找到最小的前n项和 使得 该前n项和 mod 给出的 X 等于 0思路:看到这个方程的话就会想到 (n+1)*n/2 % X = 0 ,即 (n+1)*n %2X =0; 与余数相关的,比如同余方程之类的。当然也会想到 exgcd()求相关的问题ax+ ny...

2019-09-07 19:05:00 157

转载 图论相关总结

图的构成:1)图:G = (V,E) vertex,edge集合表示: V={ } E={ };//这也就是向前星存图的基础2)有向图与无向图:3)有向图:顶点度 (deg)= 出度(indeg) + 入度(outdeg)欧拉回路:欧拉回路:图G中经过每条边一次的回路。欧拉路径:图G中经过每条边一次的路径。欧拉图:存在欧拉回路的图。半欧拉图:存...

2019-09-06 17:45:00 159

转载 Educational Codeforces Round 72 (Div. 2)

本菜鸡只写了前 四题...A题:Creating a Character原题链接题意:给两个个属性,力量,智力,以及你有的分配点数。给出基础力量智力数值,以及拥有的剩余分配点数值。你需要将点数分配完,并且保证力量的 值大于智力,输出能够分配的可能数。不能就输出0.思路:我列了一个方程:设 力量为a,智力为b,分配点数值为c. 设分到力量的为 X,分到 智力为 Y....

2019-09-06 16:45:00 74

转载 数论相关总结

参考链接数论符号以及函数模板:符号:\(连加:\) \(\sum_{i=1}^{n} i\)\(连乘:\) \(\prod_{i=1}^{n} i\)\(整除:(p为q的因子)p|q\)\(函数\)积性函数:\(积性函数指对于所有互质的整数a和b有性质f(a*b)=f(a)*f(b)的数论函数\)φ(n) -欧拉函数μ(n) -莫比乌斯函数,关于非平方数的质因子数目...

2019-09-05 20:33:00 106

转载 2017CCPC杭州-C. Hakase and Nano

原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=6266以及pdf :http://acm.hdu.edu.cn/downloads/CCPC2018-Hangzhou-ProblemSet.pdf题意:给出 N 堆石头,每堆对应有 ai 个。其中A取时 取两次,B取时取一次(每次取时至少取一个,最多取完一堆)现在给出堆数以及对应的每...

2019-09-05 20:01:00 97

转载 2017-ccpc杭州现场赛

补题中 - ing ....A.Super-palindrome原题链接:HDU - 6264 思路:由于题中给出奇数子串全是回文串,所以对应1,3,5,7... 奇数位置的字符应该相同,同理偶数位置的字符同样应该相同。所以我们只需要找到奇数位置与偶数中出现次数最大的个数,用总数去减即可。#include <cstdio>#inclu...

2019-09-05 19:24:00 144

转载 数论模板总结

(1)模板表头//所有模板默认 prime[],powe[]从下标0开始取const int MAXL = 1e6+7;int phi[MAXL];//欧拉函数int tot;int prim[MAXL];//素数表int cnt;int vis[MAXL];int powe[MAXL];//质数幂int cur;(1)素数筛<1>暴力判断:O...

2019-09-01 16:01:00 97

转载 博弈SG函数模板

#define maxn 1e4+10//maxn为堆中最大个数#define cmax 1005//cmax为取个数的方法总数using namespace std;int sg[maxn];//记录sg[n](n为堆的个数)sg值int mex[maxn];//模拟mex运算int get[cmax];//void get_sg(){ // 例如有三种情况的...

2019-09-01 15:09:00 150

转载 POJ - 3974 Palindrome (Manacher模板+讲解)

题意:多个输入样例,以字符串END结束。对于每个串输出其最长回文子串思路:对于回文串来说,我们可能一开始会想到 \(O(n^2)\)的 循环中心位置然后往左右两端匹配。Manacher算法则可以将其直接降到 \(O(n)\) ,运用的则是回文串本身对称性的原理。由于任意一个字符串长度有奇偶,对于奇数长度字符串我们好中心对称比较,偶数长度则必须以中间两个最为中心来匹配。所以我们...

2019-08-28 17:57:00 136

转载 POJ - 1651 Multiplication Puzzle (基础区间dp)

原题链接题意:给你一个长为 N 的数字序列,其中序列中的值范围在\((1~100)\)。你需要每次在序列中抽取一个数字(不能抽取两端),每次抽取一个数字的花费为:抽取的数字与其左右数字的乘积。当你把牌抽到只剩下左右两端时,求出能得到的最小花费。思路:区间dp的思路即是:为了解在一个区间上的最优解,那么把这个区间分割成一个个小区间,求解每个小区间的最优解。所以我们设二维\(dp[...

2019-08-28 16:00:00 103

转载 POJ - 2533 Longest Ordered Subsequence (最长单调子序列)

题意:求所给出长度为 N 的最长上升子序列长度""思路:**(1) \(O(n^2)\)的 动态转移:设\(dp[i]\)表示以\(i\)结尾的最长单调子序列,那么当\(arr[i]>arr[j]时\) \(dp[i]=max(dp[j]+1,dp[i]) (j\in[1,i))\)#include <bits/stdc++.h>#define IOS io...

2019-08-27 00:33:00 74

转载 POJ - 1458 Common Subsequence (LCS最长公共子序列)

题意:给出两个字符串,求出最长的公共子序列大小。思路:算是最经典的LCS问题吧。设 \(X=(x_1,x_2,.....x_n) 和 Y=(y_1,y_2,.....y_m)\) 是两个序列,将 X 和 Y 的最长公共子序列记为\(lcs(X,Y)\) ,找出\(lcs(X,Y)\)就是一个最优问题然后我们需要将其分解成子问题并求出子问题的最优解: (寻找子问题来推出当前问题,...

2019-08-26 20:02:00 101

转载 POJ - 1014 Dividing (多重背包)

题意:题意相当于:给你六种物品,每种物品对应有 \(num[i] (i为物品编号)\)个,同时第 \(ith\) 物品价值为&i&,现在问你能否将这些物品分成两堆,使得每堆的价值相同思路:我们可以用dfs去暴力搜索,当然这里使用多重背包的想法。即有 N 个物品 对应每个物品都有对应的 体积,能否找到任意 \(M\) 个把 体积为 \(tot/2\) (tot为总价值...

2019-08-26 19:23:00 133

转载 HDU - 2588 GCD (欧拉函数)

原题链接题意:给你两个数 \(N,M\) 你要求出 符合条件 \(GCD(X,N)>=M,\space (1<=X<=M)\) 中\(X\)的个数思路:一开始没有往欧拉函数去想。总想着去筛出所有合适的因子然后统计个数,或者直接暴力for去枚举因子(肯定会TLE)后面想到了一个互质关系(即是已知 \(GCD(X,N) = q\) \(X = q*a\) ,\(N...

2019-08-26 16:00:00 63

转载 HDU - 5898 odd-even number (数位dp)

题意:给你一个范围 \((1<= L,R <=9\times10^{18})\)区间范围内,你要求符合位数上连续奇数有偶数个,连续偶数有奇数个 的数的个数思路:对于区间上求符合条件数位的个数与我们肯定会想到数位dp。这道题有 连续偶数与奇数(连续个数状态),以及对应的奇偶状态(还有0这种比较特别的)所以我们可以使用\(dp[pos][val][length]\)来表示...

2019-08-26 15:23:00 93

转载 HDU - 2089 不要62(基础数位dp)

题意:给出一个范围 \((l,r)\) , 要求计算该范围中 满足 其中连续两位不为62, 并且不包含4 的符合条件个数。思路:在用数位dp写之前发现自己以前用暴力的方法过去了....(就直接枚举然后除余 4 和 64)所以明明做过一道数位dp的题,却对数位dp毫无印象..关于数位dp:在数位上计数用的dp,一般就是要统计一个区间\([l,r]\)内满足一些条件数的个数。这边...

2019-08-26 11:14:00 90

转载 POJ - 3624 Charm Bracelet (01背包基础)

题意:即是给你一个容量M的包,有N件物品,每件物品有分别对应的 价值value 以及 重量weight .然后在不超过该背包容量的情况下能得到的最大价值为多少?思路:由于这是最基础的问题,所以就记录当对 01背包状态转移方程式的 理解。对于动态规划来说,首先要知道我们要确定哪些状态量。然后再基于这些状态量进行状态转移得到我们最后希望得到的答案。比如对于序列求最值来说我们习惯记录...

2019-08-25 16:44:00 98

转载 HDU - 1024 Max Sum Plus Plus (基础dp)

原题链接:题意:给你一个长为 \(N\)的序列。你要将其分为 \(M\) 段不重叠的连续区间 , 使得这些区间的总和最大。思路:我们先从状态来看。一般关于序列问题我们很容易想到 以第 \(j\) 个数结尾的状态。然后再结合这道题的 \(M\) 个不同区间,我们可以再设一个 区间个数为 \(i\) 的状态。即最后 \(dp [i] [j]\)表示以第\(j\)个数结尾,分为\(i\...

2019-08-25 15:01:00 62

转载 POJ - 1849 Two(树的直径)

题意:给你N个结点的树,每条边的权值,以及一个起点位置S。 你有两个robot ,可以同时在树上跑。每跑过一条边就要花费一条边权值的油费(要重复i计算)。现在你要把整棵树跑完,问至少要花费多少。思路:做这道题的时候想到了之前做过19牛客暑期训练赛的一道题,第四场A-meeting(签到题),两个题都是给一颗树,然后求有关树的最小边权值。我们知道树的直径毫无疑问是最长的,我们既...

2019-08-24 15:57:00 88

转载 A-meeting 2019牛客暑期多校第四场 (树的直径)

题意:给你 N 个点以及 N-1 条边将所有点两两连接(树),每个点都有对应编号。现在给你k个点,你要求出这个树上的某个点使得 所给两个点到该点的时间(经过的边数)其中最大的那个为 所能得到的所有答案的最小值。思路:如果仅仅是两个点,那么我们用dijkstra跑一下就可以得到。但是这是k点,切要使这些点能达到的时间最小,我们就会想到树的直径这个概念。树的直径给定一棵树,树...

2019-08-24 12:19:00 92

转载 CF-1012B Chemical table(二分图,并查集)

原题连接:题意:给一个 \(N \times M\) 棋盘 对于任何一个棋盘中的由任意四点构成的矩形,如果 其中三角存在棋子 则第四个角会自动生成一个棋子 求铺满整个棋盘 我们至少要向棋盘里加多少枚棋子思路:说实话一开始很不容易去想如何去解决。存在两点,即到底所给出的棋子能最多推出哪些新的棋子,以及到底怎样最少补棋子能够使得棋盘补完。我们可以先分析一下三个棋子形成四个棋子的关系: ...

2019-08-24 10:51:00 78

转载 POJ - 2778 DNA Sequence (AC自动机+矩阵快速幂+图论)

题意:给你N个模式串( 只含 'A' , 'T' , 'G' , 'C' )以及一个文本串长度m,每个串的长度不会超过10,求出有多少个串满足不包含所有的模式串,并且长度为m. 结果 mod 100000思路:我们要使组成的串不包含模式串,如果从AC自动机的角度来想就是每一次都不能走到某个模式串结尾的位置(结点)同时他的下一个位置也不能是某个模式串的结尾,不然就不符合条件。然后我们把...

2019-08-22 18:56:00 106

转载 CF-450B (基础矩阵快速幂)

原题链接:Jzzhu and Sequences题意:给你一个线性递推式 \(f_i = f_{i-1}+f_{i+1} \Rightarrow f_{i+1} = f_i-f_{i-1} \Rightarrow f_{i} = f_{i-1}- f_{i-2}\) , \(f_1= x\space ,\space f_{2}=y\)。求 \(f_n\space \% \space1...

2019-08-20 19:22:00 107

转载 CF-580D Kefa and Dishes (状压dp)

原题链接:CodeForces - 580D题意:给你n种菜,吃每种菜都会得到对应的满足值。给出k种buff,如果先吃a再吃b 满足感就会提升c。最后你要吃共m种菜,能获得的最大满足值为多少。思路:一开始会想到最短路之类的,相当于有向图。但是这是多源出发的最长路径(不会....),在看看题目范围 最多也就18种菜。所以我们就暴力状态dp一下,来得到结果。code: (dp要...

2019-08-20 11:15:00 118

转载 HDU - 6386 Age of Moyu (dfs+bfs)

原题链接:HDU - 6386题意:给你n个站点,m条边连接。每一条边都有一个编号,顺着编号相同的一直走整条路上只花费为1。如果在中途换到不同编号的边,则花费会增加。思路:或许一开始会想到最短路,我们先建个图然后用dijkstra跑一下。建图的话我们可能想到dfs或者bfs去搜索,相同编号则花费为1。然后....我们就TLE了关于TLE主要是建图上我们单纯dfs或者...

2019-08-19 16:38:00 79

转载 HDU - 3065 病毒侵袭持续中(AC自动机)

原题地址:HDU - 3065题意:给出N个模式串(在ascii范围内(128)),再给你一个文本串 (2 e6 以内),输出存在的模式串以及出现次数 (计数可以重叠)思路:AC自动机啦,我们要会用last优化后ac-atomaton#include<bits/stdc++.h>const int M=2e6+10;const int N=100000...

2019-08-19 14:58:00 81

空空如也

空空如也

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

TA关注的人

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