自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 链表结构的基本操作(整理)

///为了方便阅读,我直接把注释写在了程序里,如果发现我写的有问题,欢迎各位巨佬指导。#include<bits/stdc++.h>using namespace std;#define MaxSize 50typedef int ElemType;typedef struct LNode //声明单链表结点类型{ ElemType data; struct LNode *next; //指向后继结点} LinkNode;void Crea...

2021-04-27 01:26:08 394

原创 快速排序整理(老粗糙了)

现附上经典源代码#include<iostream>using namespace std;void kp(int a[],int l,int r){ if(l>=r)return; int i=l; int j=r; int p=a[l]; while(i<j) { while(i<j&&a[j]>=p)j--; while(i<j&&a[i]...

2021-04-22 05:12:50 148

原创 线性表基本操作整理

///为了方便阅读,我直接把注释写在了程序里,如果发现我写的有问题,欢迎各位巨佬指导。#include<iostream>using namespace std;typedef int elemtype;///elemtype就是线性表中的元素类型///我们暂时把类型设为intconst int maxsize=100;///startsize就是线性表的大小const int nstep=10;struct mylist{ elemtype *node;///线性表中..

2021-04-06 01:08:48 239

原创 高斯消元

高斯消元高斯消元,看起来好像很高端,其实它真的很高端,只不过并不难。模拟而已。主要就是可以解决方程组的问题,还有矩阵的问题。然而用到的,就是我们平常解多元一次方程组的方法,这个消元,可以说是模拟了,它模拟了我们平时的手算。我们平时的手算也是一元一元的消掉:先以一元为例:3x=8显然x=8/3;下面换为参数:ax=b那么我们就要分情况讨论了:1.a!=0此...

2018-08-04 01:20:07 154

原创 乘法逆元

乘法逆元 (由于打不出来三横的同余符号,下面的同余符号都用两横的代替)乘法逆元是什么?说得简单一点,就是有两个数 a , b,有a*b=1(mod p)a就是b的乘法逆元,当然是关于模数p的。显然我们得到b也是a的乘法逆元。(直接看,估计是看不出来的,但是我们有两位牛人)先介绍一种求法:先由费马小定理,有:(p为素数这个条件很重要)m^(p-1)=1(mod p...

2018-08-02 23:31:39 210

原创 附:tarjan缩点模板题:洛谷p1726(这是最模板的了)

 题目点这这里发一份自己手打代码:(需要讲解的,可以看我的另一篇,讲的其实也不算太好,没帮助的话,就找其他人的吧:缩点)#include&lt;bits/stdc++.h&gt;using namespace std;const int mm=5050;int DFN[mm];int LOW[mm];int STACK[mm];int sta;int tot;vect...

2018-07-23 01:15:12 1262

原创 图论总结tarjan算法

tarjan算法,是一个可以在有向图中找到强连通分量的的算法。首先你要了解什么是强连通,以及什么是强连通分量。下面是我给的简释:一、强连通。       就是在一个有向图(记为G)中,如果两个点(记为a,b)他们分别可以走到对方(即从a出发可以走到b,从b出发也可以走到a),那么我们说这两个点(a,b)是强连通的。二、强连通子图。       设有一个有向图(记为G),他有...

2018-07-20 18:44:49 528

原创 字符串总结之ac自动机

ac不是accepted的意思,而是作者的名字。首先要学会ac自动机,就要先学会kmp算法和trie树(字典树)。然而我为了写一篇ac自动机的博客,先写了trie的模板,还写了kmp的模板,所以在这里我就不介绍kmp和trie树了,就用简洁的文字讲述ac自动机的模板。首先,我们先构造一棵trie树,对于每一个节点我们多设一个*fail指针,指向的位置----可以类比kmp的next数组...

2018-07-17 22:46:07 252

转载 字符串总结之后缀自动机

本文转自https://blog.csdn.net/qq_35649707/article/details/66473069因为自己写不出这么好的后缀自动机的博客,于是开始寻找好的博客,然后我就找到了这样的一篇,写的真的是很好。原论文(俄文)地址:suffix_automata后缀自动机 后缀自动机(单词的有向无环图)——是一种强有力的数据结构,让你能够解决许多字符串问题。...

2018-07-17 14:23:44 588

转载 成都day5

I - Nice to Meet YouTime limit : 2sec / Memory limit : 256MBScore : 100 pointsProblem StatementThere are N islands floating in Ringo Sea, and M travel agents operate ships between these islands. For c...

2018-07-13 21:22:00 143

原创 成都dp总结之导弹拦截(自己找的练习lg1020)

P1020 导弹拦截题目描述某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。输入导弹依次飞来的高度(雷达给出的高度数据是 \le 50000≤50000 的正整数),计算这套系统最...

2018-07-13 17:41:15 241

原创 dp总结day5之J-Indiffrent(code festival)

J - IndifferentTime limit : 2sec / Memory limit : 256MBScore : 100 pointsProblem StatementWe have 2N pots. The market price of the i-th pot (1≤i≤2N) is pi yen (the currency of Japan).Now, you and Lunl...

2018-07-13 15:54:02 163

原创 dp总结day5之最长上升子序列

首先有一道基础题:最长不下降子序列。(先考虑只求长度)然而这显然是一道dp题目。当然有一个比较暴力的n^2求法:首先用dp[i]表示i位置及以前的最长不下降子序列的长度。让后枚举1-i中的a[j]之后就有这样的转移方程dp[i]=max(dp[i-1],dp[j]+1);(仔细想一下就懂了)然后发现其实有一个究极精简的nlogn的算法:中间有这样的两个函数:(upper_bound(),lower...

2018-07-13 14:26:57 97

转载 成都day3t3

3 、B B  君的第 三 题 ( shanghai .pas /cpp )【问题描述】日光之下,并无新事。大家还记得 BZOJ1494[NOI2007]生成树计数吗?这个题目就是原版环形的生成树计数。考虑到有些同学没有看过这个题目,我们简述这个题目如下。输入 k, n(n ≥ 2k + 1),考虑 n 个点围成一个环,所有距离≤ k 的点对之间有一条无向边。相邻的 2 个点距离为 1,如果两个点...

2018-07-13 02:25:07 610

转载 成都day3t2

2 、B B  君的第 二 题 ( hongkong .pas/cpp )【问题描述】申生在内而亡,重耳在外而安考虑 k + 1 个数组 a[i] (0 ≤ i ≤ k)。为了方便起见,每个数组 a[i]长度为 n,下标从 1 开始。(直观来说就是第一维下标从 0 开始,第二维下标从 1 开始。)其中 a[i]时时刻刻是 a[i-1] (1 ≤ i ≤ k)的前缀和。前缀和就是 a[i][1] =...

2018-07-13 00:57:27 215 1

转载 成都day3t1

1 、B B  君的第一题 ( beijing .pas/cpp )【问题描述】天台上的朋友让一让,让我先来。世界杯开始了,B 君最近在关注一局季后赛。在这局季后赛中,甲队和乙队将会进行至多 2n-1 场比赛,谁先取得 n 场胜利,谁便会获得最终的胜利。并且之后的比赛不会继续进行。B 君很看好甲队,为了计算方便,B 君希望下注 22n-1 元,也就是说,如果最终甲队先取得了 n 场胜利,B 君就会...

2018-07-13 00:14:59 334

原创 Trie树(字典树)自学、整理

之前就学过字典树,学的时候接触oi的时间还比较少,对字典树的理解还不是很透彻,那个时候还是别人手把手教我打出的字典树代码。然而,现在再看字典树,发现并不是那么难,反而觉得很简单了。字典树其实是一种拿空间换时间的算法,对于做一些查找单词的题目来说还是很有用的。下面以洛谷p2580为例子:P2580 于是他错误的点名开始了题目背景XS中学化学竞赛组教练是一个酷爱炉石的人。他会一边搓炉石一边点名以至于有...

2018-07-11 15:51:22 321

原创 kmp自学、整理

首先我们来看这样的一道题目:有一个文本串s(长的)和一个模式串p(短的),现在要在s的子串中间找到p,怎么找?第一,肯定会想到暴力:void violent(string ss,string pp)//ss为文本串(长),pp为模式串(短){    int i;///s中匹配到了i    int j;///p中匹配到了j    int slen=ss.size();    int plen=pp....

2018-07-10 23:52:24 143

转载 成都day2t3

3 、 数论题 ( number .pas s /cpp )【问题描述】企鹅国数学家 QQ 潜心研究数论,终于发现了一个简单的数论问题!一个 QQ 数定义为一个拥有一个大于 1 的完全平方数为因子的数字,一个数字的 QQ 值定义为这个数是 QQ 数的因数个数。现在 QQ 想知道在[L,R]范围内,每个整数的 QQ 值之和是多少?你只需要告诉他这个数字,他就可以给你宝贵的 10 分作为一个奖励!【输...

2018-07-10 20:19:34 148

转载 成都day2t2

2 、 不回文 ( bhw .pas/cpp )【问题描述】学不会最小回文串划分的豆豆决定弃疗选择挑战非回文划分。他想知道一个字符串 S 的最少和最多能划分成几个非回文串?注: 如果一个字符串不是回文串,那么他是非回文串。例如()()是非回文串,而())(是回文串。【输入格式】第一行一个整数 T,表示测试数据组数。接下来 T 行,每行一个仅由小写字母构成的字符串 S。【输出格式】输出 T 行,每行...

2018-07-10 19:38:45 162

转载 成都day2t1

1 、 叠 盒子 ( box .pas/cpp )【问题描述】企鹅豆豆家里有很多空盒子,非常占地方。每个盒子的长和宽分别为 Li,Wi,一个盒子可以放入一个长和宽都不小于它的盒子(可以不断嵌套),注意盒子不能够旋转,Li有可能小于 Wi。嵌套完后盒子的占地面积是最外面盒子的占地面积之和。豆豆想知道最终最小的占地面积是多少?【输入格式】第一行一个数 N 表示盒子的个数。接下来 N 行,每行两个正整数...

2018-07-10 19:31:12 125

转载 成都day1t3

3 、 数数 ( counting .pas /cpp )【问题描述】企鹅豆豆有个 N 行 M 列的矩阵,也就是有(N+1)×(M+1)个格点。现在想知道格点可以组成多少个正方形?但是企鹅豆豆不小心吃掉了 K 个格点。那么现在又有多少个正方形?【输入格式】第一行包含三个整数 N,M,K,代表棋盘的行数、列数和不能选取的顶点个数。 保证 K≤(N+1)×(M+1)。接下来 K 行,每行包含两个正整数...

2018-07-09 22:49:33 222

转载 成都day1t1

芯片 ( chip .pas/cpp )【问题描述】企鹅集成电路公司生产了一种大小为 2×3 的芯片。每块芯片是从一块大小为 N×M 的硅片上切下来的,但由于原材料纯度问题,因而有若干的单位正方形并不能作为芯片的一部分。企鹅集成电路公司想要知道,给定一块 N×M 大小的硅片和坏掉的单位正方形的位置,最多能使用这块硅片生产多少芯片?【输入格式】输入的第一行由一个正整数 D 构成,表示硅片的个数。随后...

2018-07-09 22:15:37 120

原创 球盒问题1

假设现在有3个盒子,5个球,要把球放入盒子里,问有多少种放法;(如果可能有空盒子的情况,我们会有特别的应对方法,都是一样的,加n个球,使得每个盒子都有一个球)下面我们只讨论每个盒子都必须装球。问题一:所有盒子都不一样,所有球都不一样: 显然地,既然所有的东西都不一样,那么怎么放都是不同的方法,所以答案是3^5;问题二:所有盒子不一样,但是所有球是一样的: 既然盒子不一样,球是一样的,我们可以用隔板...

2018-07-06 21:55:27 406 1

原创 并查集模板

题目描述如题,现在有一个并查集,你需要完成合并和查询操作。输入输出格式输入格式:第一行包含两个整数N、M,表示共有N个元素和M个操作。接下来M行,每行包含三个整数Zi、Xi、Yi当Zi=1时,将Xi与Yi所在的集合合并当Zi=2时,输出Xi与Yi是否在同一集合内,是的话输出Y;否则话输出N输出格式:如上,对于每一个Zi=2的操作,都有一行输出,每行包含一个大写字母,为Y或者N输入输出样例输入样例#...

2018-07-06 09:42:12 538

原创 dfs大楼之洛谷1036

题目描述已知 nn 个整数 x_1,x_2,…,x_nx1​,x2​,…,xn​ ,以及 11 个整数 kk ( k&lt;nk&lt;n )。从 nn 个整数中任选 kk 个整数相加,可分别得到一系列的和。例如当 n=4,k=3n=4,k=3 , 44 个整数分别为 3,7,12,193,7,12,19 时,可得全部的组合与它们的和为:3+7+12=223+7+12=223+7+19=293+7...

2018-07-05 22:42:46 288

原创 dfs大楼之100分成6个数的和

题目描述:100分成六个数的和。显然是一道dfs的题目,硬的搜索即可。首先,把一百分成六个数的和,想到的是枚举,套6个循环,简单,暴力,明显;但还是手打了一遍搜索,搜索函数里面有三个变量:f:数到第几个数了;m:前一个数的大小,要求后面的数都小于他;l:剩下的数的总和;再加上首尾的特判,就写成了。下面是我写的代码:///100分成六个数的和#include&lt;iostream&gt;#incl...

2018-07-05 19:59:06 291 1

原创 dfs大楼之洛谷1988

题目描述2008北京奥运会,你想成为四川汶川的一名火炬手,经过层层选拔,终于到了最后一关,这一关是一道很难的题:任意给定一个正整数N(N&lt;=100000),求一个最小的正整数M,使得N * M的十进制表示形式里只含有1和0。输入输出格式输入格式:一行,输入一个整数N。输出格式:输出一行,如果有解,输出最小的M,否则输出“No Solution”输入输出样例输入样例#1: 复制12输出样例#1...

2018-07-03 00:36:32 182

原创 dfs大楼之洛谷1691

题目描述设R={r1,r2,……,rn}是要进行排列的n个元素。其中元素r1,r2,……,rn可能相同。使设计一个算法,列出R的所有不同排列。给定n以及待排列的n个元素。计算出这n个元素的所有不同排列。输入输出格式输入格式:第1行:元素个数n(1&lt;=n&lt;500)第2行:一行字符串,待排列的n个元素输出格式:计算出的n个元素的所有不同排列,最后一行是排列总数。输入输出样例输入样例#1: ...

2018-07-03 00:19:07 110

原创 P1198 [JSOI2008]最大数(用splay)

P1198 [JSOI2008]最大数题目描述现在请求你维护一个数列,要求提供以下两种操作:1、 查询操作。语法:Q L功能:查询当前数列中末尾L个数中的最大的数,并输出这个数的值。限制:L不超过当前数列的长度。(L&gt;=0)2、 插入操作。语法:A n功能:将n加上t,其中t是最近一次查询操作的答案(如果还未执行过查询操作,则t=0),并将所得结果对一个固定的常数D取模,将所得答案插入到数列...

2018-07-02 19:06:17 152

原创 hdu2084 数塔

数塔Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 55788    Accepted Submission(s): 32766Problem Description在讲述DP算法的时候,一个经典的例子就是数塔问题,它是这样描述的:有如下所...

2018-07-02 19:06:05 117

原创 dfs大楼之洛谷1706

题目描述输出自然数1到n所有不重复的排列,即n的全排列,要求所产生的任一数字序列中不允许出现重复的数字。输入输出格式输入格式:n(1≤n≤9)输出格式:由1~n组成的所有不重复的数字序列,每行一个序列。每个数字保留5个常宽。输入输出样例输入样例#1: 复制3输出样例#1: 复制 1 2 3 1 3 2 2 1 3 2 3 ...

2018-07-02 19:05:49 168

空空如也

空空如也

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

TA关注的人

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