1.用web-worker实现:另起一个线程,将计数工作运行在后台的JavaScript文件,并返回累加后的结果。 该js文件运行于后台,独立于其他脚本,不会影响页面的性能。html页面可以继续做任何事情,而此时web worker在后台运行,互不干扰。 在用chrome调试时候出现错误: Unca...
分类:
Web程序 时间:
2014-10-19 19:48:04
阅读次数:
196
HDU 3340 Rain in ACStar
题目链接
题意:给定几个多边形(3-5边形),然后中间有一些询问,询问一个区间的总面积
思路:多边形分割为梯形,梯形的面积为上底d1 + 下底d2 乘上 高度 / 2,两个梯形面积累加的话,可以等价为上底下底累加,所以就可以用线段树搞了,然后给定的多边形点是按顺序的,可以利用容斥去方便把一个询问拆分成几个询问
代码:
#...
分类:
其他好文 时间:
2014-10-18 17:04:43
阅读次数:
263
简单的加几个JSON字符串累加之后,con_list.toString() 的结果 是:[{"id":5,"con":"请吃药****","repeatdelay":1,"time":"22:03:03","repeatday":"1,2,3,4,5,6","repeattimes":2}, {"i...
分类:
Web程序 时间:
2014-10-18 13:52:45
阅读次数:
430
/*
中文题目 3n+1问题
中文翻译-大意 当一个数n是奇数的时候变成3*n+1,为偶数的时候变成n/2
解题思路:区间内每个数逐个求解
难点详解:如何逐个计算每个数的次数,选用while循环,还有就是将此时的 i 值赋给data,用于while循环的条件。最后再将这一个数运算次数累加在一起
关键点:理解题意
解题人:lingnichong
解题时间:2014-06-03 09:4...
分类:
其他好文 时间:
2014-10-18 08:40:13
阅读次数:
238
题目大意:求使连续子序列的和最大的第一元素,最后一个元素和子序列的和
思路:动态规划的方法,主要是找到状态转移方程。将之前累加和加上当前值
与当前值做比较, 如果将之前累加和加上当前值>当前值,那么加上当前值,
最后一个元素变为i,如果将之前累加和加上当前值<当前值,那么sum[i] = a[i]
,并且改变第一元素为i,最后元素为i。具体看代码。
状态转移方程:sum[i]=max(sum[i-1]+a[i],a[i]);...
分类:
其他好文 时间:
2014-10-17 22:01:12
阅读次数:
236
题目大意:求使连续子序列的和最大的第一元素,最后一个元素位置,和子序列
的和
思路:动态规划的方法,主要是找到状态转移方程。将之前累加和加上当前值
与当前值做比较, 如果将之前累加和加上当前值>当前值,那么加上当前值,
最后一个元素位置变为i,如果将之前累加和加上当前值<当前值,那么sum[i] =
a[i],并且改变第一元素位置为i,最后元素位置为i。具体看代码。
状态转移方程:sum[i]=max(sum[i-1]+a[i],a[i]);...
分类:
其他好文 时间:
2014-10-17 22:00:36
阅读次数:
241
Robberies
题目大意:有一个强盗要去几个银行偷盗,他既想多投点钱,又想尽量不被抓到。已知各个银行
的金钱数和被抓的概率,以及强盗能容忍的最大被抓概率。求他最多能偷到多少钱?
思路:背包问题,原先想的是把概率当做背包,在这个范围内最多能抢多少钱。
但是问题出在概率这里,一是因为概率是浮点数,用作背包必须扩大10^n倍来用。二是最大不
被抓概率不是简单的累加。二是p = (1-p1)(1-p2)(1-p3) 其中p为最大不被抓概率,p1,p2,p3
为各个银行被抓概率。
第二次想到把银行的钱当做背包,把...
分类:
其他好文 时间:
2014-10-17 20:33:36
阅读次数:
127
题意:有N个黑点和N个白点,每个黑点只能水平向右和竖直向下延伸,与一个白点配对。权值为两个点之间的曼哈顿距离。求使得n对点均配对最小的配对总权值。
思路:假设存在一组解,那么我们交换一对配对,若依旧能够满足条件,画画图就知道答案不变。
因此对于任意可行配对答案均相同。
于是我们统计出所有黑点的-x+y,所有白点的x-y,累加起来即可。
Code:#include
#inc...
分类:
其他好文 时间:
2014-10-17 12:06:07
阅读次数:
147
先说说计数排序的思想:
计数排序假定待排序的所有元素都是介于0到K之间的整数;计数排序使用一个额外的数组countArray,其中第i个元素是待排序数组array中值等于i的元素的个数。然后根据数组countArray来将array中的元素排到正确的位置。
算法的步骤如下:
找出待排序的数组中最大和最小的元素
统计数组中每个值为i的元素出现的次数,存入数组countArray的第i项
对所有的计数累加(从countArray中的第一个元素开始,每一项和前一项相加)
反向填充目标数组:将每个元素i放在新数组...
分类:
编程语言 时间:
2014-10-17 01:47:03
阅读次数:
229
很简单的递推题。d[n]=d[n-1]+d[n-k]注意每次输入a和b时,如果每次都累加,就做了很多重复性工作,会超时。所以用预处理前缀和来解决重复累加问题。最后一个细节坑了我多次:printf("%I64d\n",(s[b]-s[a-1]+mod)%mod);这句话中加mod万万不能少,因为理论上...
分类:
其他好文 时间:
2014-10-16 04:54:52
阅读次数:
168