摘要: 就枚举四种情况,哪种能行就是yes了。很简单,关键是写法,我写的又丑又长。。。看了zhanyl的写法顿时心生敬佩。写的干净利落,简直美如画。。。这是功力的体现!以下是zhanyl的写法,转载在此以供学习:#include #include #include #include #include #in... 阅读全文
posted @ 2014-08-27 22:49 周洋 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 数学家伯利亚在《怎样解题》里说过的解题步骤第二步就是迅速想到与该题有关的原型题。(积累的重要性!)对于这道题,可以发现其实和huffman算法的思想很相似(可能出题人就是照着改编的)。当然最后只是输出cost,就没必要建树什么的了。只要理解了huffman算法构造最优二叉树的思路,就按那么想就知道每... 阅读全文
posted @ 2014-08-27 21:45 周洋 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 这是最大化最小值的一类问题,这类问题通常用二分法枚举答案就行了。二分答案时,先确定答案肯定在哪个区间内。然后二分判断,关键在于怎么判断每次枚举的这个答案行不行。我是用a[i]数组表示初始时花的高度,b[i]表示要达到当前枚举的答案(即mid的值)需要这朵花再涨多少。这两个数组很好算,关键是一次浇连续... 阅读全文
posted @ 2014-08-27 19:55 周洋 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 思路是求出从每一点出发走到终点分别要受到多少伤害,然后和每个怪兽的血量比一下。给一个数组,告了哪些区间需要更新,我需要的就是都更新以后每个点的伤害值是多少。不涉及到区间查询,没必要用线段树或树状数组(据说用了也会超时。。)。如果每个区间都一个for循环把对应的几个数更新了,必然超时。那么这里的技巧就... 阅读全文
posted @ 2014-08-27 15:34 周洋 阅读(541) 评论(0) 推荐(0) 编辑
摘要: T=K*log2(N)注:2是小2时间T与以2为底的对数成正比。实际上,由于所有的对数都和其他对数成比例(从底数为2转换到底数为10需乘以3.322),我们可以将这个为常数的底数也并入K.由此不必指定底数:T=K*log(N)(知道这个公式吗:loga(b)=logc(b)/logc(a),loga... 阅读全文
posted @ 2014-08-27 08:16 周洋 阅读(2034) 评论(0) 推荐(0) 编辑