题目:给你一个单词列表,再给你一些新的单词,输出列表中重新排列能得到此新单词的词。
分析:字符串。对每个字符串的字母排序生成新的传f(str),整体排序,用二分来查找即可。
说明:注意输出要满足字典序,先排序后查找。
#include
#include
#include
#include
#include
using namespace std;
typedef struct ...
分类:
其他好文 时间:
2014-10-24 13:00:33
阅读次数:
167
首先,全排列是一个比较简单的问题,但我却没有真正的去实现过全排列。
让我独自思考全排列的话,如将 “ abcd“ 进行全排列,这种简单的全排列也能将我难住,因为真的没有考虑过这种问题。思考了一会,我只能给出以下比较麻烦的算法:
//字符串全排列
void printRE(char* str,int index,char s[],int length){
if(index == lengt...
分类:
其他好文 时间:
2014-10-21 19:39:57
阅读次数:
273
题意:
给N个长度,M个单词,每个单词有权值
输出长度不大于N的权值和最大的单词
代价相同输出长度短的,长度相同输出字典序最小
思路:
开一个字符串数组,暴力存储每个节点的单词!
其他思路和dp都一样
注意:如果和为零的话输出空串。
代码:
#include"cstdlib"
#include"cstdio"
#include"cstring"
#include"cmath"
#...
分类:
其他好文 时间:
2014-10-21 12:21:12
阅读次数:
243
拓扑排序如果是随便输出的话,那么只需要用一个队列就可以维护了。复杂度O(n)如果是要求字典序最小输入的话,使用小堆维护,正常建边即可。复杂度O(nlog(n))如果要求尽量使最小值在前输出的话(例如312 优先级高于 231)那么可以反向建边,然后在使用大堆维护,最后把顺序reverse()下。复杂...
分类:
编程语言 时间:
2014-10-20 13:10:27
阅读次数:
202
第几是谁?
时间限制:3000 ms | 内存限制:65535 KB
难度:3
描述现在有"abcdefghijkl”12个字符,将其按字典序排列,如果给出任意一种排列,我们能说出这个排列在所有的排列中是第几小的。但是现在我们给出它是第几小,需要你求出它所代表的序列.
输入第一行有一个整数n(0
随后有n行,每行是一个整数m,它代表着序列的第几小;
输出...
分类:
其他好文 时间:
2014-10-20 08:42:05
阅读次数:
187
题意:给你一个长度为n的字符串环,以位置i开始的顺时针长度为n的环构成的字符串有n个,问其中最小字典序的开始位置,有多种解时,输出起始位置最小的。分析:首先可以直接拼接两个长度为n的字符串,设原串为S[0],S[1]...S[n-1]则拼接后就是S'=S[0],S[1],...S[n-1],S[0]...
分类:
其他好文 时间:
2014-10-19 23:03:50
阅读次数:
269
题意:给你一个长度为n的数组A,第一个最大,要求你把它切成三段然后分别翻转,问你翻转完后的字典序最小的数组分析:切成三段需要确定两个分割点,对于第一个分割点由于第一个数是最大的,那么只要求一下第一段翻转后字典序最小的就是答案,求这个字典序最小第一段的方法就是对翻转后的A建立后缀数组,取第一个符合要...
分类:
其他好文 时间:
2014-10-19 14:17:20
阅读次数:
291
本文讲解4道关于permutation的题目。
1. Permutation:输出permutation——基础递归
2. Permutation Sequence: 输出第k个permutation——推理
3. Next Permutation:给定一个permutation中的序列,求字典序它的下一个permutation是什么——逻辑推理
4. Permutation II:和第一题有细微的差别: 对于一个可能有重复元素的数组输出所有permutation——有条件dfs...
分类:
其他好文 时间:
2014-10-18 19:45:40
阅读次数:
224
题目描述: Excel可以对一组纪录按任意指定列排序。现请你编写程序实现类似功能。 对每个测试用例,首先输出1行“Case i:”,其中 i 是测试用例的编号(从1开始)。随后在 N 行中输出按要求排序后的结果,即:当 C=1 时,按学号递增排序;当 C=2时,按姓名的非递减字典序排序;当 C=3时...
分类:
编程语言 时间:
2014-10-17 23:15:05
阅读次数:
391
题目:http://codevs.cn/problem/1051/分析:当然单词查找树是可以的,但这题有更为简便的方法。可以先按字典序排序,然后弄一个栈,如果当前字串可以接到栈顶元素的后面,那么当前字串入栈,更新ans,否则栈顶元素弹出,知道当前字串可以接到新栈顶元素后面。
分类:
其他好文 时间:
2014-10-17 00:27:23
阅读次数:
209