最近的一些心得20130609

   最近发现自己一年来做题量还是太少了,总结也不多,思维灵活度还是有所欠缺,对于细节考虑不周,往往只有直觉的判断。

    比如最近挂了一场去年集训队选拔的考试,明明F题http://acm.hust.edu.cn/vjudge/contest/view.action?cid=24974#problem/F应该是要做出来的,后面也看出来出题者是要我们保存部分状态,即像贪心又似动归。然后自己也推到p只要保存到100,w2只要保存到8就可。。但是还纠结去保存w1,,回头看了别人程序,才发现w1根本可以不保存,每次直接推完,这样是一来,只做部分是不超时的。。所以可见这一方面训练还要加强,这种比较算法比较不那么直接的题目自己还是做的太少了。。

   还有就是最近的一场cf187(div2)(假定题中给的2串为s1,s2),d题实际上纯判断是会超时的(把所有的都拓展完再去做),自己意思到这一点,然后也知道要先预处理,但是方向又错了,我是独立不管2个字符串的处理,然后二分答案在判定。。这样一来,判定就变得很复杂,已经不能在第一个原串的长度内判定。。这样就很复杂,尽管理论上这样是不会超时的。。。而看了别人代码,感觉巨简单,思路简单,代码也好写。。就是直接处理s2的每个字符在s1一个周期内可以到哪个字符(比如, s1 为abab s2 : bab, 那么s2的第一个字符b经过s1的一个周期就到了第一个位置,因为s1包含了bab),并统计增不增加ans,过了本身1个周期累加1.这样在对每个s1的周期直接统计答案就行了。。挺好的思路。

   第三就是发现自己组合数学还是太弱了,特别是组合计数部分,有时间必须补补。。

   所以我感觉拓展性的思维才是解题的关键,而且必须保持清醒的头脑,多往几个方向想想,不要思维定势。。。

原文地址:https://www.cnblogs.com/yzcstc/p/3127885.html