"欢迎来看看呀" 题目大意:给你一串长度为n的字符串,你可以给每个位置上染上一种不大于n的颜色,对于相邻的两个位置,如果他们的颜色不同则可以交换他们的位置,现在需要交换若干次后按照字典序排序,你需要找到最少满足条件的颜色数并输出方案 可以想到,只有一个字符要与另一个字符交换,才要染成不同颜色,从前往 ...
分类:
其他好文 时间:
2020-02-05 15:07:23
阅读次数:
76
题目大意: 给定一段长度为n的字符串s 你需要给每个字符进行涂色,然后相邻的不同色的字符可以进行交换 需要保证涂色后能通过相邻交换把这个字符串按照字典序排序(a~z) 你可以使用无限种颜色,但是要保证用到的颜色种类最少 从1开始对颜色进行编号,先输出最少使用的颜色种类,再给出涂色方案 解题思路 1: ...
分类:
其他好文 时间:
2020-02-05 10:16:13
阅读次数:
92
题目大意: 给定一段长度为n的字符串s 你需要给每个字符进行涂色,然后相邻的不同色的字符可以进行交换 需要保证涂色后能通过相邻交换把这个字符串按照字典序排序(a~z) 你只有两种颜色可以用来涂 问是否存在这么一种涂色方案满足题意 存在,输出YES,再用01表示两种不同的颜色,把涂色方案输出(如果有多 ...
分类:
其他好文 时间:
2020-02-05 09:53:43
阅读次数:
95
将字符串每个后缀按照字典序排序 $sa:$表示排名为$i$的后缀的起始位置 $rk:$表示起始位置为$i$的后缀的排名 $sa[rk[i]]=i,\ rk[sa[i]]=i$ 通过倍增和基数排序来实现$O(n\ log\ n)$的排序 基数排序时先排第一关键字,再在第一关键字相同下排第二关键字 第二 ...
分类:
编程语言 时间:
2020-01-22 22:00:40
阅读次数:
64
https://acm.ecnu.edu.cn/contest/231/problem/A/ 题意:给你长度为n的单词,其中有m个是#表示不确定字母,每个#有k个候选字母,将所有可以单词按字典序排序,问第x个单词是? 解法:模拟进制顺序。 //#include <bits/stdc++.h> #in ...
分类:
其他好文 时间:
2019-11-30 09:56:25
阅读次数:
62
1.Redis自动补全功能介绍: ? Redis可以帮我们实现很多种功能,今天这里着重介绍的是Redis的自动补全功能的实现.我们使用有序集合,并score都为0,这样就按元素值的字典序排序.然后我们可以根据排序号的字符,进行添加前缀和后缀的方式,找到我们想要的区间内容.下面介绍一个简单的Zset的 ...
分类:
其他好文 时间:
2019-10-01 09:27:43
阅读次数:
109
"题目" 这道题目,用康托展开,时间和空间都碾压了100%的c++. 康拓展开其实就是表示一个连续序列,其实也不用连续,给定一个序列,可以很快速的按照字典序,列出所有序列。给出特定序列,快速告诉你它是按照字典序排序是第几个,给出排名,快速输出序列 https://www.cnblogs.com/da ...
分类:
其他好文 时间:
2019-09-10 00:23:40
阅读次数:
87
模板改自jdr和ldl学长$qwq$ 后缀数组,顾名思义,就是对于一个字符串的每一个后缀的数组。 比如对于字符串fatcat,其所有后缀如下: fatcat atcat tcat cat at t 其按照字典序排序结果如下: at atcat cat fatcat t tcat 一般来说,对于每个后 ...
分类:
编程语言 时间:
2019-08-09 13:17:35
阅读次数:
85
题目地址 题目大意:n个人,m种关系 (a和b是朋友),可以看作 n个点,m条边, 用图论的知识解题 问在使最少人不开心的情况下,输出进房间字典序排序最小的顺序。(如果在小A进房间之前房间内没有他的朋友,他就不开心) 使用并查集分块,每个并查集的根节点和独立点(无朋友)的总个数就是输出的不开心的人数 ...
分类:
其他好文 时间:
2019-08-03 14:21:38
阅读次数:
96
#include #include using namespace std; const int MAXN = 1e5+7; const long long mod = 1e9+7; int n; int maxj; struct node { int id; int num[MAXN]={0}; ... ...
分类:
编程语言 时间:
2019-07-15 09:25:38
阅读次数:
114