模板
编号21212
SSL是母校,现前往新地图开拓中。
漫游于平行线间的灰鲤,于此处激起黑色孤独的水花。
展开
-
【STL】Map、Set、Bitset、堆。一些操作
Mapmap<int,int> mp; //定义类型(会按第一维关键字自动排序mp[x] = y; //赋值,x可以赋较大,y为映射值mp.size(); //里面元素的多少map<int,int>::iterator k; //定义迭代器map.find(x); //找位置,返回迭代器,找不到返回map.end()for(k = mp.begin(); k != mp.end(); k++)//遍历。(注意mp.end()只相当于结束符号,不代表存入的东西) c原创 2021-10-12 13:10:58 · 219 阅读 · 0 评论 -
【矩阵乘法】【模板】裴波拉契数列II
题目大意求斐波那契数列第n项mod 10000的值。其中:1< n < 231输入123456789输出4514矩阵乘法一个大小为 a∗ba*ba∗b 的矩阵A与一个 b∗cb*cb∗c 的矩阵B相乘,设C = AB,则C的大小为 a∗ca*ca∗c,且C[i][j]=∑k=1bA[i][k]∗B[k][j],其中(1<=i<=a,1<=j<=c)C[i][j] = \sum_{k=1}^{b}A[i][k]*B[k][j] ,其中 (1<=i原创 2020-12-12 16:19:50 · 165 阅读 · 0 评论 -
【最小生成树】【并查集】灌水
很明显的最小生成树数…写的时候我竟然一时忆不起来…还有一不小心思路打对了结果数组开小了交上去掉分…wsl题目描述Farmer John已经决定把水灌到他的n块农田,农田被数字1到n标记。把一块土地进行灌水有两种方法,从其他农田饮水,或者这块土地建造水库。建造一个水库需要花费wi,连接两块土地需要花费Pij.计算Farmer John所需的最少代价。输入*第一行:一个数n*第二行到第n+1行:第i+1行含有一个数wi*第n+2行到第2n+1行:第n+1+i行有n个被空格分开的数,第j个数代原创 2020-08-11 15:33:36 · 116 阅读 · 0 评论 -
P3379 【模板】最近公共祖先(LCA)
Link如题,给定一棵有根多叉树,请求出指定两个点直接最近的公共祖先。Input第一行包含三个正整数N、M、S,分别表示树的结点个数、询问的个数和树根结点的序号。接下来N-1行每行包含两个正整数x、y,表示x结点和y结点之间有一条直接连接的边(数据保证可以构成树)。接下来M行每行包含两个正整数a、b,表示询问a结点和b结点的最近公共祖先。Output输出包含M行,每行包含一个正整数,...原创 2019-10-31 17:33:32 · 124 阅读 · 0 评论 -
洛谷P3375 【模板】KMP字符串匹配
Link如题,给出两个字符串s1和s2,其中s2为s1的子串,求出s2在s1中所有出现的位置。为了减少骗分的情况,接下来还要输出子串的前缀数组next。(如果你不知道这是什么意思也不要问,去百度搜[kmp算法]学习一下就知道了。)Input第一行为一个字符串,即为s1第二行为一个字符串,即为s2Output若干行,每行包含一个整数,表示s2在s1中出现的位置接下来1行,包括len...原创 2019-10-24 17:26:12 · 157 阅读 · 0 评论 -
洛谷P3370_【模板】字符串哈希
RT.Link哈希,用于处理一些大值统计方面问题,它的下位是堆排?(c,不存在下位的),当数值特别大的时候,堆的数组就会炸掉。于是哈希将这些特别大的数除上一个质数,得到一个位置存这个特别大的数。(然后就正常用,每次就找到这个得出的位置)由于除的是质数,所以一般情况,不同的数得到的位置是不会冲突的。如果冲突了,那么就存的这个位置的后面,或者往后找一个新的位置存下来。这题要我们求n个字符串中不...原创 2019-08-11 17:11:51 · 182 阅读 · 2 评论 -
【最长上升子序列】洛谷P3902_递增
逐·渐·中·二拒绝大魔王,来一道简单点的题怪水一水。怪物种类:最长上升子序列等级:橙题(shui(bu打怪攻略:1.用一个序列s存最长上升子序列,然后对于一个新的数a,如果它大于序列末尾的数,那么序列s末尾就接上a。2.不然就在序列s中找一个sl<a<=sr的位置,将a存到r位置上。答案就是序列最长的长度。此怪非模板,需要输出用n减去序列最长长度。#include...原创 2019-08-14 20:36:53 · 378 阅读 · 0 评论 -
【线段树】线段树练习题一
桌子上零散地放着若干个盒子,桌子的后方是一堵墙。如右图所示。现在从桌子的前方射来一束平行光, 把盒子的影子投射到了墙上。问影子的总宽度是多少?Input第一行,一个数m代表桌面宽度第二行,一个数n代表盒子数量第2到n+2行,每行两个数代表盒子开始与结束的位置Output一个数,影子的总宽度Sample Input2041 5 3 87 1013 19Sample O...原创 2019-08-19 17:28:11 · 143 阅读 · 0 评论 -
【离散化】某虚伪的线段树练习题一
你以为我是线段树,其实我是离散化哒~咳咳。。。桌子上零散地放着n个盒子,桌子的后方是一堵墙。如右图所示。现在从桌子的前方射来一束平行光, 把盒子的影子投射到了墙上。问影子的总宽度是多少?Input第一行,一个m,一个n(废物m)接下来2-n+1行,每行两个数,分别是盒子的起点和终点。Output一个数,影子的总宽度Sample Input20 //桌面总宽度4 //...原创 2019-08-18 16:51:23 · 110 阅读 · 0 评论 -
【离散化】图形面积
桌面上放了N个平行于坐标轴的矩形,这N个矩形可能有互相覆盖的部分,求它们组成的图形的面积。Input输入第一行为一个数N(1≤N≤100),表示矩形的数量。下面N行,每行四个整数,分别表示每个矩形的左下角和右上角的坐标,坐标范围为–108到108之间的整数。Output输出只有一行,一个整数,表示图形的面积。Sample Input31 1 4 32 -1 3 24 0 5 2...原创 2019-08-18 15:57:30 · 366 阅读 · 0 评论