解题报告
对于给定的数组,取对数组中的一段进行翻转,问翻转后是否是递增有序的。
思路:
只要找到最初递减的区域,记录区域内最大和最小的值,和区间位置。
然后把最大值与区间的下一个元素对比,最小值与区间上一个元素对比。
这样还不够,可能会出现两个或两个以上的递减区间,这种情况直接pass,因为只能翻转一次。
#include
#include
#include
#define in...
分类:
其他好文 时间:
2014-07-25 11:17:31
阅读次数:
303
1 /* 2 不改变正负号序列,使得负数在正数前面,要求O(n),时间复杂度,O(1)空间复杂度 3 实际情况,很可能做不到,可以用类似快排partition的方法,但是不能保证有序了,保证有序的一个方法是用翻转,例如 4 2,3,4,-1,-2,3,-5,-6——————翻转为2,3,4,-1,....
分类:
其他好文 时间:
2014-07-25 02:24:24
阅读次数:
209
笔者最近由于实验室老师的任务安排重新又看了一下分频器的verilog实现,现总结如下,待以后查看之用(重点是查看计数器计到哪个值clk_out进行状态翻转)1.偶数分频占空比为50%其实质还是一个N计数器模块来实现,首先要有复位信号,这个复位信号的作用就是使计数器和分频输出clk_out刚开始有一个...
分类:
其他好文 时间:
2014-07-24 16:55:25
阅读次数:
222
这个是去年遗留历史问题,之前思路混乱,搞了好多发都是WA,就没做了自从上次做了大白书上那个双重懒惰标记的题目,做这个就思路很清晰了跟上次大白上那个差不多,这个也是有一个sets标记,代表这个区间全部置为0或者1,没有置位的时候为-1还有个rev标记,代表翻转操作,0代表当前不翻,1代表当前翻要注意一...
分类:
其他好文 时间:
2014-07-24 09:50:13
阅读次数:
522
题目链接题意:给出几个基因片段,要求你将它们排列成一个最短的序列,序列中使用了所有的基因片段,而且不能翻转基因。分析:先计算出add数组,再dfs枚举。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7...
分类:
其他好文 时间:
2014-07-23 22:11:17
阅读次数:
281
题解地址:点击打开链接
题解:最终的结果一定是连续出现的,只需要求出最终的区间。因为如果对同一张牌进行两次操作,牌的状态不改变。故牌的翻转次数一定是减少偶数次。如果所有数的和是奇数,那么最终结果也一定是奇数。同理,偶数也是一样的。所以只要递推求出最后的区间,计算sum(C(xi,m)(i=0,1,2。。。)),m是总牌数,xi是在区间内连续的奇数或偶数,在模10^9+9就是最终的答案。
#in...
分类:
其他好文 时间:
2014-07-23 17:10:51
阅读次数:
213
HDU 4869 Turn the pokers
题目链接
题意:给定n个翻转扑克方式,每次方式对应可以选择其中xi张进行翻转,一共有m张牌,问最后翻转之后的情况数
思路:对于每一些翻转,如果能确定最终正面向上张数的情况,那么所有的情况就是所有情况的C(m, 张数)之和,那么这个张数进行推理会发现,其实会有一个上下界,每隔2个位置的数字就是可以的方案,因为在翻牌的时候,对应的肯定...
分类:
其他好文 时间:
2014-07-23 13:35:56
阅读次数:
241
题目大意
给定M张牌,可以翻转N次,每次可以翻转恰好Xi张牌,刚开始牌面全部朝下,问经过N次翻转之后可能产生的扑克序列数(如样例hint)。
解题思路
现场还是没出……想到dp的思路但复杂度高达N^2.
可以观察到,我们最后正面朝上的牌的数量奇偶总是一定的(如1,3,5),因为不同奇偶情况就需要至少多翻一次,但翻动的次数已经固定不能更改。...
分类:
其他好文 时间:
2014-07-23 13:27:06
阅读次数:
224
题目链接:hdu 4869 Turn the pokers
题目大意:给定n和m,表示有n次翻牌的机会,m张牌,一开始所有的牌均背面朝上,每次翻牌可以选择xi张牌同时翻转。问说最后有多少种能。
解题思路:只要确定最后正面朝上的牌的个数即可。所以在读入xi的时候维护上下限即可。
#include
#include
#include
using namespace std;
ty...
分类:
其他好文 时间:
2014-07-22 23:44:57
阅读次数:
286
uva 269 - Counting
Patterns
题目大意:给出n和k,要求找出满足的序列,要求为n元组,由-k到k组成,并且和为0。求出所有满足的元组个数,并且对于左移,右移,水平翻转,每个元素取相反数相同的视为一种,用字典序最大的表示,输出按照字典序最小的输出。
解题思路:因为表示的时候按照字典序最大的表示,一开始枚举开头的位置,那么在后面的数的绝对值就不会大于该数。最后...
分类:
其他好文 时间:
2014-07-22 00:16:37
阅读次数:
246