给出一个正整数,找出这个正整数所有数字全排列的下一个数。通俗的说就是在一个整数所包含数字的全部组合中,找到一个大于且仅大于原数的新整数。举例: 如果输入:12345,则返回12354 如果输入:12354,则返回12435 如果输入:12435,则返回12453 思路: 字典序算法: 从后向前查看逆 ...
分类:
编程语言 时间:
2019-09-13 17:52:00
阅读次数:
126
题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 解题思路 采用二 ...
分类:
编程语言 时间:
2019-09-13 15:27:06
阅读次数:
89
题目描述: 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。 思路: 一开始觉得暴力解开可以吧,但是觉得这是零分的做法就没有这样做。 先将整型数组转换成String数组,然 ...
分类:
编程语言 时间:
2019-09-04 00:27:35
阅读次数:
90
题目描述 给定数字 0 9 各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意 0 不能做首位)。例如:给定两个 0,两个 1,三个 5,一个 8,我们得到的最小的数就是 10015558。 现给定数字,请编写程序输出能够组成的最小的数。 输入格式 输入在一 ...
分类:
其他好文 时间:
2019-09-03 16:25:43
阅读次数:
72
题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 把一个数组最开始 ...
分类:
编程语言 时间:
2019-08-27 16:58:36
阅读次数:
113
题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。 思路:定义排序规则。 两个数字m和n拼接成数字mn和nm,如果mn小于nm,应该打印mn,m放在n前面 1 cl ...
分类:
编程语言 时间:
2019-08-26 00:23:58
阅读次数:
94
题目:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 我原本看不太懂题目, ...
分类:
编程语言 时间:
2019-08-26 00:19:43
阅读次数:
102
例题1:[bzoj3224]&[luogu3369]普通平衡树(平衡树模板题) 题意:维护一个集合,支持:1.加入x;2.删除x;3.查询x排名;4.查询排名x的数;5.查询x前驱;6.查询x后继 0.3查询(有多少个数小于x)+1,4查询存在x个数小于等于它的最小数,5查询排名为(x排名-1)的数 ...
分类:
其他好文 时间:
2019-08-25 20:04:09
阅读次数:
56
题意: 给你两个串s和t,其中t是由s中选择若干个不相交的区间翻转得到的,现在要求求出最少的翻转次数以及给出方案。 1≤|s|=|t|≤500000 题解: 我们将两个字符串合成成T=s1t1s2t2...sntn T=s1t1s2t2...sntn那么问题就是最少要把整个字符串T 拆分成若干个偶数 ...
分类:
其他好文 时间:
2019-08-24 11:35:48
阅读次数:
103
贪心 预处理 1. 排序,从小到大,从大到小 1. 从左往右扫看,从右往左看 模型 1. 分组问题 1. 组和大于特定值,尽可能填满的基础上填最小数字,[Allowance ](https://www.cnblogs.com/a1b3c7d9/p/11403024.html) 1. 区间和小于特定值 ...
分类:
其他好文 时间:
2019-08-24 10:19:54
阅读次数:
80