- 博客(27)
- 收藏
- 关注
原创 [蓝桥杯 2023 省 A] 颜色平衡树:从零开始理解树上莫队 一颗颜色平衡树引发的惨案
十四是一名7年没碰过信息学竞赛的蒟蒻,有一天他看见了一颗颜色平衡树,这是他脑内发生的变化
2024-03-26 22:48:08
2584
4
原创 网络流EK模板(Dinic)优化
#include<bits/stdc++.h>using namespace std;const int inf=999999999;int edge[201][201];int n,m;int level[201];int bfs(){ memset(level,0,sizeof(level)); queue<int> q; level[1...
2018-08-08 16:52:49
280
转载 快速幂
这里首先要讲解一下快速幂算法:快速幂取模算法在网站上一直没有找到有关于快速幂算法的一个详细的描述和解释,这里,我给出快速幂算法的完整解释,用的是C语言,不同语言的读者只好换个位啦,毕竟读C的人较多~所谓的快速幂,实际上是快速幂取模的缩写,简单的说,就是快速的求一个幂式的模(余)。在程序设计过程中,经常要去求一些大数对于某个数的余数,为了得到更快、计算范围更大的算法,
2017-10-27 15:59:15
555
原创 利用Treap排序
#include#include#includeusing namespace std;struct node{ int x,w; struct node *fa,*lc,*rc; node(){ x=0;w=0;fa=NULL;lc=NULL;rc=NULL; }};node *root;void ZAG(node *a,no
2017-06-10 21:07:27
330
原创 已知前序中序求后序
不断地在前序中找到树与子树的根节点,在中序中对应,并存入树型结构。1.建树:#include#include#include#include#include#includeusing namespace std;typedef struct node{ char d; node*l,*r; }*Tree;Tree root;char pre[100],mid[
2017-05-29 18:23:02
765
原创 指针类型与动态变量
一:概念 指针类型:指示内存地址的数据类型; 指针变量:存放内存地址的变量(简称"指针"); 二:指针变量的定义 1.格式: 指针的类型 *变量名/*"*"是指针说明符*/; 如: int *p; int *a[100]; char *s; 2.结构体指针: 如: struct
2017-04-22 13:49:39
698
原创 划分硬盘分区
题目描述小H花10000元买了一台超高低配置的电脑,然而电脑上连分区都没划分,于是,小H准备开始依据《操作员手册》第三篇《电脑配置(10000元机器)》划分分区。这本书说:这台机器需要被划分成n个分区,其中可以有分区是空的(这并不完全等于没划分)。因为电脑的奇奇怪怪的问题,所以第i个分区的大小只能是0和a[i]之间的整数这台电脑的内存为m(n个分区的大小的和为m),小H想知道有
2017-03-26 20:47:14
544
原创 来往
题目描述C镇是一个非常和谐的小镇。可是,3天前的一场泥石流,阻断了这个小镇和外界的联系,也阻断了小镇内部的联系。这个小镇可以抽象为一个n*m的矩阵,其中1是被泥石流蔓延的地方,不能再经过了。而0是正常的道路或房屋,人们可以从这些地方随意走动。L*Y和L*R是好peng友,他们经常来往。泥石流时,L*Y处在第a行第b列的位置,而L*R处在第c行第d列的位置。问:L*Y和L*R
2017-03-26 20:44:50
344
原创 面积
题目描述编程计算由“1”号围成的下列图形的面积。面积计算方法是统计1号所围成的闭合曲线中水平线和垂直线交点的数目。如下图所示,在10*10的二维数组中,有“1”围住了15个点,因此面积为15。输入一个10*10的二维数组输出面积样例输入0 0 0 0 0 0 0 0 0 00 0 0 0 1 1 1 0 0 00 0 0 0 1 0 0
2017-03-26 20:42:20
2124
原创 n皇后
题目描述有n个“皇后”,摆在一个n*n的棋盘里,要求任意两个不能互相攻击(同行、同列、同对角线可互相攻击)求方案数输入n输出方案数样例输入8样例输出92附AC码:#include#include#include#include#include#includeusing namespace std;int n,ans=0;i
2017-03-26 20:35:22
286
原创 生成全排列(经典题 && 洛谷 P1706 )
生成全排列(经典题 && 洛谷P1706 )题目描述输出自然数 1 到 n 所有不重复的排列, 即 n的全排列, 要求所产生的任一数字序列中不允许出现重复的数字。输入输出格式输入格式:n(1≤n≤9)输出格式:由 1~n组成的所有不重复的数字序列, 每行一个序列。 每个数字保留 5个常宽。输入输出样例输入样例#1:3输出样例#
2017-03-26 20:22:24
542
原创 确定进制(OpenJudge1973 && POJ1331 )
确定进制(OpenJudge1973 && POJ1331)总时间限制: 1000ms 内存限制:65536kB描述6*9 = 42 对于十进制来说是错误的, 但是对于13 进制来说是正确的。即, 6(13)* 9(13) = 42(13), 而 42(13) = 4 * 131+ 2 * 130= 54(10)。 你的任务是写一段程序读入三个整数 p、 q 和 r
2017-03-26 20:21:21
1599
原创 火柴棒等式(洛谷 1149 && NOIp2008 提高组 T2 )
火柴棒等式(洛谷1149 && NOIp2008 提高组T2 ) 题目描述给你 n 根火柴棍, 你可以拼出多少个形如“A+B=C”的等式? 等式中的A、 B、C是用火柴棍拼出的整数( 若该数非零, 则最高位不能是 0) 。注意:加号与等号各自需要两根火柴棍如果 A≠B, 则 A+B=C 与 B+A=C视为不同的等式( A、B、 C>=0)
2017-03-26 20:18:49
512
原创 烤鸡
题目背景猪猪hanke得到了一只鸡题目描述猪猪Hanke特别喜欢吃烤鸡(本是同畜牲,相煎何太急!)Hanke吃鸡很特别,为什么特别呢?因为他有10种配料(芥末、孜然等),每种配料可以放1—3克,任意烤鸡的美味程度为所有配料质量之和现在,Hanke想要知道,如果给你一个美味程度,请输出这10种配料的所有搭配方案输入输出格式输入格式:一行,n输出格式:第一行,方案总
2017-03-26 20:10:12
956
原创 回文字符串
求给定字符串变成回文字符串,最少需插入多少个字符输入:n(n=3~5000)n个字符输出:最少插入字符数样例:入:5 Ab3bd 出:2附AC码:#include#include#include#include#include#includeusing namespace std;char a[5001];char b[500
2017-03-26 20:04:19
304
原创 最长公共子序列
给定两个序列:A1~An , B1~Bn ,求它们最长公共子序列如: A:1 2 3 2 4 1 2 B:2 4 3 1 2 1最长长度:4路径:2 3 2 1附AC码:#include#include#include#include#include#includeusing namespace std;int a[101];int b[101]
2017-03-26 20:02:53
246
原创 守望者的逃离
【问题描述】 恶魔猎手尤迪安野心勃勃,他背叛了暗夜精灵,率领深藏在海底的娜迦族企图叛变。守望者在与尤迪安的交锋中遭遇了围杀,被困在一个荒芜的大岛上。为了杀死守望者,尤迪安开始对这个荒岛施咒,这座岛很快就会沉下去。到那时,岛上的所有人都会遇难。守望者的跑步速度为17m/s,以这样的速度是无法逃离荒岛的。庆幸的是守望者拥有闪烁法术,可在1s内移动60m,不过每次使用闪烁法术都会消耗魔法值10点
2017-03-26 19:58:45
584
原创 纪念品分组
【题目描述】元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作。为使得参加晚会的同学所获得的纪念品价值相对均衡,他要把购来的纪念品根据价格进行分组,但每组最多只能包括两件纪念品,并且每组纪念品的价格之和不能超过一个给定的整数。为了保证在尽量短的时间内发完所有纪念品,乐乐希望分组的数目最少。你的任务是写一个程序,找出所有分组方案中分组数最少的一种,输出最少的分组数目。 【输入】
2017-03-26 19:56:30
708
原创 奖学金 2007年普及组第一题
【问题描述】某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。期末,每个学生都有3门课的成绩:语文、数学、英语。先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的同学排在前面,这样,每个学生的排序是唯一确定的。任务:先根据输入的3门课的成绩计算总分,然后按上述规则排序,最后按排名顺序输出前5
2017-03-26 19:54:38
439
原创 道路游戏 动态规划
【问题描述】小新正在玩一个电脑游戏:有一条环形道路,路上有n个机器人工厂,按顺时针方向编号1~n,相邻工厂之间的n段路也编号1~n,规定:i号路段连接i和i+1号工厂,n号路段连接n和1号工厂。游戏时,每分钟每段路上都会出现一些金币,不同时间在同一路段出现的金币数可能不同。小新需要操控机器人收集金币。机器人必须在工厂购买,购买后机器人顺路行走,每分钟走一段路,并收集路上的所有金币。如:
2017-03-26 19:50:19
788
原创 采药 动态规划
【问题描述】辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”
2017-03-26 19:43:08
1084
1
原创 01背包模板动态规划
以下附一维AC码:#include#include#include#include#include#includeusing namespace std;struct node{ int w,v;}a[101];int f[101];int p[101][101];int w,n;void work(){ for(int i=1;i<=n;i++)
2017-03-26 19:40:10
385
原创 导弹拦截
导弹拦截系统某导弹拦截系统在试用阶段发现一个缺陷:虽然它的第一发炮弹能到达任意高度,但是之后每一发炮弹都不能超过前一发的高度。因此有可能不能拦截所有导弹。现在已知n枚导弹依次飞来的高度h(正整数h1、这套系统最多能拦截多少枚导弹?2、若要拦截所有导弹,最少需要配备多少套系统?输入:n (1 n颗导弹飞来的高度输出:一套系统的最多拦截数 依次列出被拦截
2016-12-24 20:50:19
384
原创 动态规划Dynamic
一.思路:从终点向前看,依次算出最优的子问题,依次向前推,到起点返回,得出最优解。二.判定:1.问题是否有最优子结构性质,即:全局是否包含局部最优。 2.状态的无后效性 一句话:过去与未来无关 状态量->问题阶段最优解的变量形式 三.基本解题步骤 1.设“状态量” 2.划分阶段 3.建立状态转移方程 即:
2016-11-25 21:19:05
240
原创 链式前向星
#include#include#include#include#include#includeusing namespace std;const int maxn=1000;const int maxm=100;int to[maxm],next[maxm],begin[maxm],p[maxm],w[maxm],e;void add(int x,int
2016-10-09 23:17:52
232
原创 普通深度优先搜索(方法总数)模板简介
/*普通深度优先搜索(方法总数)模板简介*/#include#include#include#include#include#include/*头文件,没什么好说的。*/using namespace std;int n,sum=0;int a[10001]; void out(){ for(i=1;i printf("%d ",
2016-09-25 23:42:38
584
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人