给定一个正整数N代表火车数量,0
输入:有多组测试用例,每一组第一行输入一个正整数N(0
输出:以字典序排序的火车出站序列号,每个编号以空格隔开,每个输出序列换行。
解析:该问题可以提炼成为给出进栈序列,求出所有的出栈顺序。该题是一道模拟题,模拟进栈出栈的顺序。对于每一个元素进栈后 都可以有2种行为:出栈或者驻留在栈中。整个过程可以用一个树的形式来表达。因此采用回朔法(回溯法的过程...
分类:
其他好文 时间:
2015-01-21 11:45:49
阅读次数:
132
背景:1Y
思路:类似于选择排序的思想,用一个ans来记录最小值,搜索所有可能值中的最小值。
学习:
1.strcmp(a,b)的返回值是a相对于b的字典序,大则返回1,小则返回-1,等则返回0.
2.一个线性的链要成环的话,就%n。
#include
#include
int main(void){
int t;
char DNA[105],ans[105];
s...
分类:
其他好文 时间:
2015-01-21 11:45:37
阅读次数:
133
题目:一个二维的矩阵,从左向右找到一条路径,每次可以移动到右侧,右上或者右下的格子中,
要求找到一条,路径上的数字和最小的路径,输出路径(和相同时输出字典序最小的)。
分析:dp,动态三角形。因为要字典序最小逆序求解,记录输出即可,最优解取决于相邻的三个元素。
说明:注意输出格式。
#include
#include
#include
#include
u...
分类:
其他好文 时间:
2015-01-19 21:07:56
阅读次数:
308
题意: NxN的地图,上面有A颜色的瓷砖以及一些空格点,要用B,C,D颜色去填充这些空格,只能十字形的填充,还要保证共角或共边的格子不能是相同颜色,求一种字典序最小的填充方法,如果不能,输出"Not Possible"。解法: 从上往下扫,如果有空格,那么一定是以它下面那个格子为中心填十字瓷砖才能填...
分类:
其他好文 时间:
2015-01-19 01:39:50
阅读次数:
216
题目本身一点儿都不难,但是就是被字典序搞死了。写的挺麻烦,但是过了,逆向做好做一点儿。 1 /* 1619 */ 2 #include 3 #include 4 #include 5 6 #define MAXN 15 7 #define MAXM 105 8 #define...
分类:
其他好文 时间:
2015-01-18 13:08:08
阅读次数:
220
摘要:字典序法是生成全排列的经典算法。本文在对字典序法进行分析的基础上,提出了一种基于逆序列的改进字典序全排列生成算法。通过与传统的四种全排列生成算法进行对比,本文方法可以大大提高全排列的生成效率。关键词:全排列;字典序;逆序列基于逆序列的字典序法的改进code
分类:
其他好文 时间:
2015-01-17 22:00:29
阅读次数:
183
题目大意:给出一个环形的字符串,问从哪里开始是的这个字符串的字典序最小。
思路:最小表示法和后缀自动机的裸题,不过我是为了学后缀自动机才写的这个题,就没有去学最小表示法。
做法很简单,先建立一个后缀自动机,然后从根开始沿tranc指针从a->z走len次到达的点就是字典序最小的字符串的结尾点,求起始点只要减一下长度再+1即可。
对于后缀自动机的理解:http://wyfcyx...
分类:
其他好文 时间:
2015-01-17 10:04:22
阅读次数:
197
都快退役啦,小白书上的例题还不会。
给出一个序列S,则S的字典序为 sigma(dp[i] * (n-i)!) (1
对于两个序列A,B,(ord(A) + ord(B))%n!可以转化成 sigma( (A_dp[i] + B_dp[i] + (A_dp[i+1]+B_dp[i+1])/(n-i+1))%(n-i+1) )( 1
解码部分和编码部分为逆操作,详见代码。
#inc...
分类:
其他好文 时间:
2015-01-15 18:18:59
阅读次数:
314
题意:
给一个字符串,然后找一个子串,使子串满足其中连续重复子串最多。
比如ababab,重复次数为3,ababa,重复次数为1(abab是两次)
恶心在于还要输出最小字典序。
题解网上都有,不发了。
代码:
#include
#include
#include
#include
#define N 101000
#define LOGN 20
#define...
分类:
编程语言 时间:
2015-01-13 15:58:20
阅读次数:
256
第几是谁?
时间限制:3000 ms | 内存限制:65535 KB
难度:3
描述 现在有"abcdefghijkl”12个字符,将其按字典序排列,如果给出任意一种排列,我们能说出这个排列在所有的排列中是第几小的。但是现在我们给出它是第几小,需要你求出它所代表的序列.
输入第一行有一个整数n(0
随后有n行,每行是一个整数m,它代表着序列的第几小;输出输出一个序列,占一行,代表...
分类:
其他好文 时间:
2015-01-13 09:03:46
阅读次数:
193