这道题是NOIP第一道DP优化题,看似容易,实际上想要满分也颇有难度。
传送门:1002 过河
算法
此题显然要用到DP,DP方程也显而易见:
if (stone[i]) f[i]=min{f[i-j]}+1; (S
else f[i]=min{f[i-j]};
这样的时间复杂度为 O(LT) ,空间复杂度为 O(L) 。
而此题的L高达 10亿 ,所以这种朴素的方法只能得 30...
分类:
编程语言 时间:
2014-10-22 14:44:16
阅读次数:
309
题目大意:给定一个序列,m次交换两个数,求初始逆序对数及每次交换后的逆序对数
首先离散化,分块,对于每块建立一个树状数组,保存这个块中的所有元素
然后对于每个询问(x,y) (x
a[i]
a[i]>a[x] ++ans
a[i]
a[i]>a[y] --ans
然后对于块中的树状数组处理,块外的暴力
注意此题元素有重复 亲测可信
RANK5吓尿0.0 为何块套树要比树套树还快…...
分类:
编程语言 时间:
2014-10-22 14:42:48
阅读次数:
286
abstract class ParentRunner extends Runner implements Filterable,Sortable...
分类:
编程语言 时间:
2014-10-22 14:43:33
阅读次数:
195
安装boost1.48.0
在boost的官网下载boost1.48.0,链接如下:
http://sourceforge.net/projects/boost/files/boost/1.48.0/boost_1_48_0.tar.gz/download
tar -xzvf boost_1_48_0.tar.gz解压到当前目录
cd boost_1_48_0进入boost库目录
./b...
分类:
编程语言 时间:
2014-10-22 14:39:58
阅读次数:
184
关于查找数列中第k小的元素的常见方法:
1、先排序整个数列然后取第k-1个数
2、利用选择排序
3、选择算法
4、利用计数排序的思想
5、利用堆排序思想(一)
6、利用堆排序思想(二)...
分类:
编程语言 时间:
2014-10-22 14:36:48
阅读次数:
281
重载overload
针对:类中已有的方法
重载条件:
相同的方法名,不同的参数列表【不同的参数列表包括参数的类型,参数的顺序】
不构成重载:
不同的访问权限
不同的返回值
抛出异常
不同的异常个数
使用泛型作为参数,由于泛型会在编译时进行类型擦除,泛型有时会被认为是相同的参数列表。如List 和List擦除后均是List
重写override
...
分类:
编程语言 时间:
2014-10-22 14:37:36
阅读次数:
200
JVM GC 垃圾回收器类型小结
JVM的垃圾回收器大致分为四种类型:
1、串行垃圾回收器
2、并行垃圾回收器
3、并发标记扫描垃圾回收器
4、G1垃圾回收器
1、串行垃圾回收器
串行垃圾回收器在进行垃圾回收时,它会持有所有应用程序的线程,冻结所有应用程序线程,使用单个垃圾回收线程来进行垃圾回收工作。
串行垃圾回收器是为单线程环境而设计的,如果你的程序不需要多线程,启动串行...
分类:
编程语言 时间:
2014-10-22 14:34:15
阅读次数:
291
装饰器模式定义:动态地给一个对象添加一些额外的职责。在Python中Decorator mode可以按照像其它编程语言如C++, Java等的样子来实现,但是Python在应用装饰概念方面的能力上远不止于此,Python提供了一个语法和一个编程特性来加强这方面的功能。首先需要了解一下Python中闭...
分类:
编程语言 时间:
2014-10-22 14:30:59
阅读次数:
210
【 声明:版权全部,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 眼下,网上关于网页爬行的代码非常多。可是,自从看了go语言的web下载代码之后,我才发现原来它的网页下载代码才是最简单的。不信的话,大家能够看一下,package main import( ...
分类:
编程语言 时间:
2014-10-22 14:29:35
阅读次数:
210
1 "" == false // true2 "0" == false // true3 "" == "0" //false以上代码是js实际运行的结果。所以在JS中,==是不可靠的,因为JS会自动对类型进行转换。这个不是本随笔要讲的重点。以下才是关键。如何很合理的进行变量的转换。如果某个接口,只能...
分类:
编程语言 时间:
2014-10-22 14:29:46
阅读次数:
167
mina是对nio的具体实现。是目前比较高效和流行的nio框架了。下面是对使用mina进行通讯的一个简单demo,后面再用mina写一个RPC的简单框架。mina主要包括:(使用的mina版本为2.0.0.M4 core,具体可见官方网站 )mina也分服务端和客户端(这是肯定的...)其中服务端为...
分类:
编程语言 时间:
2014-10-22 14:28:38
阅读次数:
264
一个Python程序,Shebang line。
分类:
编程语言 时间:
2014-10-22 14:28:06
阅读次数:
183
Visual Studio 2010默认是Unicode的,在VC 6.0中编译成功的项目在VS2010中常会出现类型错误。 经常出现的错误是:不能从const char *转换为LPCWSTR 如使用CreateDC("DISPLAY",NULL,NULL,NULL)就会报错,如果使用强制转换(L...
分类:
编程语言 时间:
2014-10-22 14:27:06
阅读次数:
197
对于一个C语言程序而言,内存空间主要由五个部分组成代码段(.text)、数据段(.data)、BSS段(.bss),堆和栈组成,其中代码段,数据段和BSS段是编译的时候由编译器分配的,而堆和栈是程序运行的时候由系统分配的。布局如下在上图中,由编译器分配的地址空间都是在连接的时候分配的,而运行时分配的...
分类:
编程语言 时间:
2014-10-22 14:21:55
阅读次数:
259
$('#table').datagrid({url: '/get/data/path/to/your/server',pageNumber: 2,pageSize: 10,...}); 當手動設置 pageNumber >= 2 時,查看網络請求會有兩次,並且第二次的請求的 pageNumber =...
分类:
编程语言 时间:
2014-10-22 14:22:19
阅读次数:
195
C语言编程时,发现细节的魅力很大。较为详细了看了一下关于include的知识,发现了几点新知:1.include和include"头文件名"如:include和include"stdio.h"前者(使用),来引用stdio.h文件,是首先检索标准路径,看看这些文件夹下是否有该头文件;如果没有,也不会...
分类:
编程语言 时间:
2014-10-22 14:19:40
阅读次数:
194
Eclipse maven构建springmvc项目Listener 监听器
分类:
编程语言 时间:
2014-10-22 14:18:01
阅读次数:
146