模版
Apro1066
其他我都不想聆听 唯有我的声响除外
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
大整数类模版
#include<string> #include<iostream> #include<iosfwd> #include<cmath> #include<cstring> #include<stdlib.h> #include<stdio.h> #include<cstring> #原创 2018-08-19 20:41:36 · 363 阅读 · 7 评论 -
[洛谷]P3368 【模板】树状数组 2 (#树状数组+差分)
题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数数加上x 2.求出某一个数的值 输入格式 第一行包含两个整数N、M,分别表示该数列数字的个数和操作的总个数。 第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。 接下来M行每行包含2或4个整数,表示一个操作,具体如下: 操作1: 格式:1 x y k 含义:将区间[x,y]内每个数加上k...原创 2019-08-09 15:42:17 · 472 阅读 · 0 评论 -
[洛谷]P3372 【模板】线段树 1 (#线段树)
题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上x 2.求出某区间每一个数的和 输入输出格式 输入格式: 第一行包含两个整数N、M,分别表示该数列数字的个数和操作的总个数。 第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。 接下来M行每行包含3或4个整数,表示一个操作,具体如下: 操作1: 格式:1 x y k 含义:将区间[...原创 2019-07-16 20:15:45 · 530 阅读 · 0 评论 -
[洛谷]P3378 【模板】堆
题目描述 如题,初始小根堆为空,我们需要支持以下3种操作: 操作1: 1 x 表示将x插入到堆中 操作2: 2 输出该小根堆内的最小数 操作3: 3 删除该小根堆内的最小数 输入输出格式 输入格式: 第一行包含一个整数N,表示操作的个数 接下来N行,每行包含1个或2个正整数,表示三种操作,格式如下: 操作1: 1 x 操作2: 2 操作3: 3 输出格式: 包含若干行正整...原创 2019-07-18 21:05:26 · 274 阅读 · 0 评论 -
[洛谷]P3388 【模板】割点(割顶) (#图论-Tarjan求割点)
题目背景 割点 题目描述 给出一个n个点,m条边的无向图,求图的割点。 输入输出格式 输入格式: 第一行输入n,m 下面mm行每行输入x,yx,y表示xx到yy有一条边 输出格: 第一行输出割点个数 第二行按照节点编号从小到大输出节点,用空格隔开 输入输出样例 输入样例#1 6 7 1 2 1 3 1 4 2 5 3 5 4 5 5 6 输出样例#1 1 5 ...原创 2019-02-11 16:54:34 · 397 阅读 · 0 评论 -
[洛谷]P3366 【模板】最小生成树 (#图论-最小生成树)
题目描述 如题,给出一个无向图,求出最小生成树,如果该图不连通,则输出orz 输入输出格式 输入格式: 第一行包含两个整数N、M,表示该图共有N个结点和M条无向边。(N<=5000,M<=200000) 接下来M行每行包含三个整数Xi、Yi、Zi,表示有一条长度为Zi的无向边连接结点Xi、Yi 输出格式: 输出包含一个数,即最小生成树的各边的长度之和;如果该图不连通则输出...原创 2019-01-29 22:19:49 · 364 阅读 · 0 评论 -
[洛谷]P3367 【模板】并查集 (#图论-并查集)
题目描述 如题,现在有一个并查集,你需要完成合并和查询操作。 输入输出格式 输入格式: 第一行包含两个整数N、M,表示共有N个元素和M个操作。 接下来M行,每行包含三个整数Zi、Xi、Yi 当Zi=1时,将Xi与Yi所在的集合合并 当Zi=2时,输出Xi与Yi是否在同一集合内,是的话输出Y;否则话输出N 输出格式: 如上对于每一个Zi=2的操作,都有一行输出,每行包含一个大写字母...原创 2019-01-29 22:35:49 · 290 阅读 · 0 评论 -
[洛谷]P3374 【模板】树状数组 1 (#树状数组)
题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某一个数加上x 2.求出某区间每一个数的和 输入输出格式 输入格式: 第一行包含两个整数N、M,分别表示该数列数字的个数和操作的总个数。 第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。 接下来M行每行包含3个整数,表示一个操作,具体如下: 操作1: 格式:1 x k 含义:将第x个数加上k 操...原创 2019-02-07 16:28:22 · 263 阅读 · 0 评论 -
A.pro读算法の11:最短路径之Dijkstra算法
此文是献给OIer看的。讲的东西比较基础(其实我理解Dijkstra花了很长时间)。NOIP2018结束约有1个月了,但是我们仍要继续前进,为NOIP2019做准备。本节学习Dijkstra的算法思想和实现,以及优先队列和堆优化。线段树也可以做到优化,甚至可能还更快,但是我太弱了不会。。 好了,本蒟蒻A.pro今天给大家带来的是----A.pro读算法の11:最短路径之Dijkstra算法。 ...原创 2018-12-11 13:29:56 · 646 阅读 · 0 评论 -
A.pro读算法の8:快速搞定图的遍历
与其他数据结构一样,图也需要进行遍历操作,来访问各个数据点,以及后续对顶点和边进行操作。相对于树来说,图的结构更为复杂。 目录 1.1 概述 1.2 图的存储结构 1.3 深度优先遍历[2018.10.01完工] 1.4 广度优先遍历[2018.10.11完工] 大部分灵感来与《啊哈算法》 1.1 概述 先介绍一下图。 图(graph)是数据结构和算法学中最强大的框架之一(或许没...原创 2018-09-23 00:15:11 · 775 阅读 · 2 评论 -
[洛谷]P1226 【模板】快速幂||取余运算 (#数学 -1.7)
题目描述 输入b,p,k的值,求b^p mod k的值。其中b,p,k*k为长整型数。 输入输出格式 输入格式: 三个整数b,p,k. 输出格式: 输出“b^p mod k=s” s为运算结果 输入输出样例 输入样例#1 2 10 9 输出样例#1 2^10 mod 9=7 思路 模版题。 #include <stdio.h> #include &...原创 2018-08-23 11:46:36 · 285 阅读 · 0 评论 -
A.pro读算法の7:快速搞定bfs算法
bfs算法,即广度优先算法(Breadth First Search)。 和dfs类似的,同样可以遍历一张图。它并不考虑结果的可能位置,彻底地搜索整张图,直到找到结果为止。和dfs一样,这是一种蛮力的解决方案。 比如,你的眼镜掉了,你趴在地上找。你会先伸手找离你最近的地方,如果没有,再向远处寻找... 和深搜的区别是:同样是对四周进行扩展,只是bfs是所有能扩展的点进入队列,不像深搜,不到最...原创 2018-08-17 18:27:25 · 678 阅读 · 6 评论 -
A.pro读算法の6:快速搞定dfs算法
A.pro不喜欢说那么长的概念和定义,因为那实在是太烧脑了,像我这种蒟蒻看个5分钟就该滚回去睡觉了。 那么,我们需要在最短的时间内搞定这个女装山脉(雾)dfs。 dfs算法,即深度优先算法(Depth First Search)。理解深搜的重要关键点是在于解决“现在该怎么做”。至于“接下来该怎么做”和“现在该怎么做”是一样的。先举个例子。 全排列问题 题目描述 输出自然数1到n所有不重复...原创 2018-08-08 21:58:49 · 2590 阅读 · 6 评论 -
快速幂操作
1.1 概论 快速幂顾名思义,就是快速算某个数的多少次幂。其时间复杂度为O(log₂N),与朴素的O(N)和一般求法的O(N*N)相比效率有了极大的提高。 1.2 原理 以下以求a的b次方来介绍 [1] 把b转换成二进制数。 该二进制数第i位的权为 例如 11的二进制是1011 11 = 2³×1 + 2²×0 + 2¹×1 + 2º×1 因此,我们将a¹¹转化为算 ...原创 2018-07-17 12:28:57 · 505 阅读 · 0 评论 -
A.pro读算法の3:二分查找及模板
二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。 【算法原理】 用给定值k先与中间结点的关键字比较,中间结点把线形表分成两个子表,若相等则查找成功;若不相等,再根据k与该中间结点关键字的比较结果确定下一步查找哪个子表,这样递归进行,直到查找到或查找结束发现表中没有这样的结点。 ...原创 2018-07-24 15:13:48 · 336 阅读 · 0 评论 -
连通块问题
判断一个二位数组有几个连通块,八领域都表示连通。用@表示连通块。 输入n,m,表示地图大小,接下来输入地图,问这个由@组成的连通块有多少个。 样例输入: 10 12 @........@.. .@@@.....@@@ ....@@...@@. .........@@. .........@.. ..@......@.. .@.@.....@@. @.@.@.....@. .@.@........原创 2018-08-17 14:00:28 · 3715 阅读 · 0 评论 -
[洛谷]P3371 【模板】单源最短路径(弱化版) (#最短路)
题目背景 本题测试数据为随机数据,在考试中可能会出现构造数据让SPFA不通过,如有需要请移步P4779。 题目描述 如题,给出一个有向图,请输出从某一点出发到所有点的最短路径长度。 输入格式 第一行包含三个整数N、M、S,分别表示点的个数、有向边的个数、出发点的编号。 接下来M行每行包含三个整数Fi、Gi、Wi,分别表示第i条有向边的出发点、目标点和长度。 输出格式 一行,包含N...原创 2019-08-23 21:21:21 · 296 阅读 · 0 评论
分享