题目:给你一个小写字母组成大的串和一个整数n,找到里面长度为n出现最频繁的子串。
分析:字符串、hash表、字典树。这里使用hash函数求解,只做一次扫描即可。
说明:如果频率相同输出字典序最小的。
#include
#include
#include
#include
char subs[15],buf[1000001];
char *strsub(char *str, int ...
分类:
其他好文 时间:
2015-03-13 18:46:34
阅读次数:
151
HDU 1043的加强版
8数码问题
给出8数码问题的两种状态,求从A状态到B状态的最优解,数据保证有解,若有多解,输出最短且字典序最小的。
基本思路和1043的差不多,只不过这次要预处理出来9种情况的BFS
即:
BFS(0,"012345678");
BFS(1,"102345678");
BFS(2,"120345678");
BFS(...
分类:
其他好文 时间:
2015-03-13 16:38:09
阅读次数:
192
题意:n个数字组成的序列,第一个数字最大,,把序列分成3部分,每个部分分别翻转,输出翻转后字典序最小的序列。。后缀数组变一下,,先求出 第一个分割的位置,,然后再求一次后缀数组,,求出第二个位置。。输出就好了。此题要采用单组输入。。。 1 #include 2 #include 3 #inclu.....
分类:
其他好文 时间:
2015-03-13 00:02:34
阅读次数:
139
嵌套矩形问题(最长路及其字典序)有n个举行,选出尽量多的矩阵排成一排,使得除了最后一个之外,每一个矩形可以嵌套在下一个矩形内,并且打印#include #include #include #include #include #include #include #include #include #i...
分类:
其他好文 时间:
2015-03-12 18:43:06
阅读次数:
148
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1016题目描述:1~n的整数排成一个环,首尾相连,相邻的两个数相加是素数,输出满足的排列,1开头输出,字典序;题目要点:dfs 本题安顺序dfs,可以满足字典序,对于每一个要放进去的数要考察两个,一、是....
分类:
其他好文 时间:
2015-03-11 00:41:08
阅读次数:
116
给出最高15*15的0 1矩阵,每次可以翻转一个点,其相邻的4个点都被翻转,问最少翻转几次可以全部变为0
题中要求的字典序根本不用考虑。。。
枚举第一行的翻转所有翻转情况然后逐行向下更新即可,因为第一行确定后,后面的都有唯一解
#include "stdio.h"
#include "string.h"
int n,m;
int vis[21][21],b[21][21],a[21][21...
分类:
其他好文 时间:
2015-03-10 12:15:52
阅读次数:
150
http://acm.hdu.edu.cn/showproblem.php?pid=1814题意:n个2人组,编号分别为2n和2n+1,每个组选一个人出来,且给出m条关系(x,y)使得选了x就不能选y,问是否能从每个组选出1人。且输出字典序最小的答案。(n#include #include #inc...
分类:
其他好文 时间:
2015-03-09 23:58:26
阅读次数:
170
题目大意:给出一个沙漏,包含一个倒三角和一个三角,每个方格有一个0到9的数字,从顶上某格走到底下某格,求得到一个特殊值的路径有多少条,并输出字典序最小的。路径用一个起点和一系列'L'和'R'的字符表示。
用a[i][j]表示第i行第j列的数字。由于要求字典序最小的,所以从下往上递推。用d[i][j][u]表示在(i,j)且和为u的路径有多少条,在上半部分是倒三角,可以由d[i+1][j]...
分类:
其他好文 时间:
2015-03-09 09:27:02
阅读次数:
270
问题开始之前, 首先介绍一下利用C++ 头文件中的next_permutation()和pre_permutation产生0, 1, 2, 3, ... N - 1全排列。 这两个函数
产生全排的办法是通过字典序的原理。 next_permutation() 按照递增的办法产生字典序的下一个(唯一确定的, 与当前的排列之间不能夹杂了任何可行的
排列)。 prev_permutation() 产...
分类:
其他好文 时间:
2015-03-08 17:21:05
阅读次数:
275
引言对一个给定数据进行全排列,在各种场合经常会用到。组合数学中,生成全排列的方法有很多,卢开澄老师的《组合数学》中就介绍了三种:序数法,字典序法,临位互换法等。其中以字典序法由于算法简单,并且使用的时候可以依照当前状态获取下一个状态,直到所有排列全部完成,方便在程序中随要随用,应用比较广泛,STL中...
分类:
编程语言 时间:
2015-03-05 14:16:40
阅读次数:
1289