能力综合提升-字符串-1
0x01 字符串哈希 字符串哈希通过牺牲很小的准确率,达到快速进行字符串匹配的效果。 就单向加密嘛,很简单。可以多次哈希减小出错概率。 1.1 P3370【模板】字符串哈希 题意:对字符串数组去重,求出剩余字符串的个数。 当然可以用 std::map,但我们要练习哈希的写法。 vector<ull> v; ull Hash(string &s) { u...
0x01 字符串哈希 字符串哈希通过牺牲很小的准确率,达到快速进行字符串匹配的效果。 就单向加密嘛,很简单。可以多次哈希减小出错概率。 1.1 P3370【模板】字符串哈希 题意:对字符串数组去重,求出剩余字符串的个数。 当然可以用 std::map,但我们要练习哈希的写法。 vector<ull> v; ull Hash(string &s) { u...
1 函数前加上 inline 表示内联函数 inline: 定义在类中的成员函数默认都是 内联的,如果在类定义时就在类内给出函数定义,那当然最好。如果在类中未给出成员函数定义,而又想内联该函数的话,那在类外要加上 inline,否则就认为不是内联的。 class A { public:void Foo(int x, int y) { } // 自动地成为内联函数 } 关键...
0x01 前言 其实 $awa$ 早就想换电脑了!高考结束之后也没有买,说是等促销;但是 $awa$ 都用了三年的没有 独显(这个很重要,一会要考)的电脑了!打游戏会崩,Minecraft 装不了光影,3A 大作玩不了,刷新率也只有 60Hz。 0x02 选择 一时兴起想问问买什么好,被推荐去笔记本吧看看。首先轻薄本肯定是不考虑了,就游戏本喵。选多少价位的合适呢?我想了想,还是看看他们...
0x00 前言 众所周知,在进行代码的编写时,我们不可避免的拥有自己的代码风格,但是为了以下等原因,你或许需要规范自己的代码风格: 便于自己理解 便于团队里其他人理解 自己看得爽 方便他人帮你调试代码 以下是一些较为常见的风格分析,可以根据重要程度(星数)规范自己的写法。 0x01 代码块的缩进 [★...
wiki 说明 mt19937 是一个随机数生成器类,效用同 rand(),随机数的范围同 unsigned int 类型的取值范围。 其优点是随机数质量高(一个表现为,出现循环的周期更长;其他方面也都至少不逊于 rand()),且速度比 rand() 快很多。使用时需要 #include<random>。 mt19937 基于 32 位梅森缠绕器,由松本与西村设计于 19...
Code.cpp // -std=c++17 -lm -O2 -Wall -Wl,-stack=2147483647 // #pragma GCC optimize(3, "Ofast", "inline") #include <bits/stdc++.h> using namespace std; #define F(i, a, b) for(int i = a, i##e...
比赛传送门 E. Rendez-vous de Marian et Robin 题意:有边权无向图,两人从两个起点出发,在某些节点有使自己速度加倍的道具(永久生效),求两人碰头的最短时间。$n,m\leq 2\times 10^5$。保证边权为偶数。 显然是分层图,在这些特殊节点向下层连一条有向边,下层的边权减半。 跑两遍 Dijkstra,枚举节点计算答案最小值。 $w_i\le...
比赛传送门 CDE 写不出来真是给他烂完了。更多的蔬菜。 A. Zhan’s Blender 题意:一个栈每秒最多可以弹出 $x$ 个数,我每秒可以最多往栈里放 $y$ 个数,求栈弹出 $n$ 个数最短时间。 显然我使劲往里面放就行了,栈使劲弹出就行了。 [ans=\left\lceil\dfrac{n}{\min(x,y)}\right\rceil] Code ans = n...
比赛传送门 A. Simple Palindrome 题意:构造一个长度为 $n$ 仅含 aeiou 的字符串,最小化回文子串的数量。 显然尽可能让 aeiou 均摊 $n$。 那么显然接下来要么扎堆要么挨个排。 如果挨个排,那么扎堆自己组成的回文串依然存在,并且会新增其他的回文串;而自己扎堆只会产生关于自己的回文串。所以我们有理由断言,应该扎堆排。 Code int n, s...
0x01 P10287 最长不下降子序列 题意:求出在 DAG 上的最长不下降子序列。$n,m\leq 10^5,1\leq A_i \leq 10$。 首先,最长不下降子序列怎么求? 设计状态: $f_i$ 表示到点 $i$,最长不下降子序列的最长长度。 不行。每条边转移一次,更新一次的时间复杂度为 $O(n)$,总的时间复杂度为 $O(nm)$,TLE。 注意 $1 \...