09 2014 档案

摘要:这两道题都是用的尺取法。尺取法是《挑战程序设计竞赛》里讲的一种常用技巧。就是O(n)的扫一遍数组,扫完了答案也就出来了,这过程中要求问题具有这样的性质:头指针向前走(s++)以后,尾指针(t)要么不动要么也往前走。满足这种特点的就可以考虑尺取法。poj3061 比较简单,也可以用二分做,时间复杂度O... 阅读全文
posted @ 2014-09-24 23:12 周洋 阅读(200) 评论(0) 推荐(0)
摘要:很简单的暴力枚举,却卡了我那么长时间,可见我的基本功不够扎实。两个数相乘等于一个数6*n,那么我枚举其中一个乘数就行了,而且枚举到sqrt(6*n)就行了,这个是暴力法解题中很常用的性质。这道题找出a和b中最小的那个,然后开始枚举,一直枚举到sqrt(6*n)的向上取整。这样所有可能是答案的情况都有... 阅读全文
posted @ 2014-09-23 21:50 周洋 阅读(223) 评论(0) 推荐(0)
摘要:紫书例题,这道题的例程让我长了知识。以前没有用过cctype和stringstream相关的东西。很实用,值得学习。#include 的函数c++中应该是#include c中应该是#include 以下为字符函数库中常用的函数:函数名称返回值isalnum()如果参数是字母数字,即字母或数字,该函... 阅读全文
posted @ 2014-09-18 19:59 周洋 阅读(2111) 评论(1) 推荐(0)
摘要:这个题是简单题,但是我的思路本身不周全,忽略了一种比较“无理”的情况,而导致WA多次。我是把猜的串全扫一遍以后判断出结果,但是实际上可能是前面已经全猜对了,但是这个选手是个逗比,已经猜对了还要猜,而且后面还又猜错了几次,导致最后猜错的总次数大于7。这种情况下应该也算win的。所以如果已经全猜对了,就... 阅读全文
posted @ 2014-09-18 11:56 周洋 阅读(1096) 评论(0) 推荐(0)
摘要:紫书上的代码是打表。我的做法是暴力枚举。注意,有多个变量时,选择枚举哪一个变量会影响到时间效率,值得考虑。由于各位数字之和最大就是五个9的和为45,所以就枚举各位数字之和比较快。#include#include#include#include#include#include#include#incl... 阅读全文
posted @ 2014-09-17 23:23 周洋 阅读(323) 评论(0) 推荐(0)
摘要:一看就是找规律的题。只要熟悉异或的性质,可以秒杀。为了防止忘记异或的规则,可以把异或理解为半加运算:其运算法则相当于不带进位的二进制加法。一些性质如下:交换律:结合律:恒等律:归零律:典型应用:交换a和b的值:a=a^b^(b=a);#include#include#include#include#... 阅读全文
posted @ 2014-09-09 22:11 周洋 阅读(274) 评论(0) 推荐(0)
摘要:就暴力枚举所有起点和终点就行了。我做这题时想的太多了,最简单的暴力枚举起始点却没想到。。。应该先想最简单的方法,层层深入。#include#include#include#include#include#include#include#include#include#include#includeu... 阅读全文
posted @ 2014-09-01 22:44 周洋 阅读(211) 评论(0) 推荐(0)