ST表ST表 原理 首先声明几点: st[i][j]表示这段区间上从第i个位置自己开始起,往后数2^i个数之间的最大值 lg[i]表示不超过i的最大2次幂指数(就是2的i次方不超过i且i尽量大) 输出RMQ最值的时候,最好用函数来写 第一部分:输入并预处理lg数组 …Solost2023 年 04 月 14 日0 条评论
Codeforces Round 578 (Div. 2) – E. Compress Words题目链接 题目链接 题目大意 题目的意思是把字符串删去连续的两个字母,问剩下的字符串拼起来有多少种? 题解 #include <algorithm> #include <bitset> #include <cmath> #i…Solost2023 年 04 月 14 日0 条评论
字符串哈希核心思想 将字符串看成P进制数,P的经验值是131或13331,取这两个值的冲突概率低小技巧:取模的数用2^64,这样直接用unsigned long long存储,溢出的结果就是取模的结果 模板 typedef unsigned long long ULL;…Solost2023 年 04 月 13 日0 条评论
线段树概念 线段树是算法竞赛中常用的用来维护 区间信息 的数据结构。 线段树可以在O(log N)的时间复杂度内实现单点修改、区间修改、区间查询(区间求和,求区间最大值,求区间最小值)等操作。 操作 定义树 pushdown pushup build modify …Solost2023 年 04 月 10 日0 条评论
Codeforces Round 256 (Div. 2) – D. Multiplication Table题目链接 题目链接 题目大意 给你一个n,m问你n*m中第k大的数是多少 题解 刚开始想着如何数出来是第几个,然后虽然想暴力但是压根存不了,5e5*5e5太大了,看了题解后二分,二分这个答案,我们查的数是第几个。 如果当前数是x,那么我们推算他比小的数的个数,…Solost2023 年 04 月 06 日0 条评论
高精度除法#include <iostream> #include <vector> #include <algorithm> using namespace std; vector<int> div(vector<…Solost2023 年 04 月 03 日0 条评论
高精度减法#include <iostream> #include <vector> using namespace std; bool cmp(vector<int> &A, vector<int> &B…Solost2023 年 04 月 03 日0 条评论
AcWing – 1488. 最短距离题目链接 链接 题目大意 这道题问你,给你n个村庄,有些村庄有商店,有些村庄没商店,问你从某个村庄出发,找到一个商店最短距离是多少。 题解 这题一眼顶针。没看出来,本来想的是从询问的点开始每次spfa一次,但是,但是,肯定会超时的啦。然后就有一个很骚的操作,把…Solost2023 年 03 月 31 日1 条评论
sublime text C++详细配置教程1. 安装sublime text 进入sublime官网下载sublime的安装包(当然也可以在官网下载页面下载portable版本,不过建议下载默认的setup版本) 双击安装包: 应该一会就下载完成了。 此时可以在应用列表看到sublime: 2. 下载…Solost2023 年 03 月 31 日0 条评论
Codeforces Round 861 (Div. 2) – C. Unlucky Numbers题目链接 链接 题目大意 给你一个区间L, R问你这个区间内最不幸运的数是多少,答案可能有多个,最不幸运的定义是一个数里面最大位减去最小位差值最小。 题解 这个题刚开始想着dfs搜索,分两种情况。 位数不同位数不同直接遍历 位数相同如果这一位相同,就往下找,如…Solost2023 年 03 月 31 日0 条评论