参见hdu 3068 的manacher算法
代码如下:#include
#include
#define M 110010
int s[M],ss[M*2];//s代表原来的字符串,ss代表插入之后的字符串
int p[M*2]; //表示以i为中心的(包含i这个字符)回文串半径长
int min(int a,int b)
{
return a>b?b:a;
}
int mai...
分类:
其他好文 时间:
2014-07-18 11:06:33
阅读次数:
249
HQL查询步骤
1、获取Hibernate Session对象
2、编写HQL语句
3、以HQL语句作为参数,调用Session的createQuery方法创建查询对象
4、HQL语句包含参数,则调用Query的setXx方法为参数赋值
5、Query对象的list等方法返回查询结果列表...
分类:
其他好文 时间:
2014-07-18 11:05:51
阅读次数:
225
bool iconv_convert(const std::string& in, std::string& out, const char* fromcode, const char* tocode)
{
char buffer[128];
auto cd = iconv_open(tocode, fromcode);
if (cd != nullptr)
{...
分类:
其他好文 时间:
2014-07-18 11:15:10
阅读次数:
188
CRT远程连接服务器字符输出乱码解决一例
环境:
服务器:Centos 6.2
远端:win 7
CRT版本:7.1.1
现象回顾:
1、服务器端:中文字符显示正常,如下:
2、CRT连接,出现乱码,如下图所示:
3、对CRT设置调整,如下:
Options -> Session Options -> Appearance -> Font ...
分类:
其他好文 时间:
2014-07-18 11:05:27
阅读次数:
195
创业,不管是开店,还是开公司。我们首先要清楚自己的核心竞争力是什么。...
分类:
其他好文 时间:
2014-07-18 11:34:20
阅读次数:
189
1.多道批处理系统
在单道批处理系统中,内存中仅有一道作业,它无法充分利用系统中的所有资源,致使系统性能较差。
在多道批处理系统中,用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”。然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。其优缺点为:
(1)资源利用率高;
(2)系统吞吐量大:系统吞吐量是指系统在单位时...
分类:
其他好文 时间:
2014-07-18 11:04:31
阅读次数:
229
题目意思是,从一个n*m的乘法表(不要问我乘法表是什么)中选出第k小数(相同的数字会计算多次)。
比如样例 2 3 4
乘法表为
1 2 3
2 3 4
非减序列是:1, 2, 2, 3, 3, 4。第4个数字是3,所以输出3。
一开始我想到的是搜索,从n*m开始搜索,后来发现状态实在太多而且即便是搜索,时间复杂度是O(N * M)。
正确的解法是二分。二分答案(边界是[1, n * m]),然后在乘法表中去找比他小的数。因为乘法表是一个有规律的数表,所以针对每一列直接O(1)计算即可,总共计算N次。
总的...
分类:
其他好文 时间:
2014-07-18 11:04:12
阅读次数:
257
对文件的操作,都将涉及到对磁盘的访问。磁盘I/O速度的高低和磁盘系统的可靠性,都将直接影响到系统性能。
1.数据的组织和格式:
盘片----盘面----磁道----扇区。
低级格式化----磁盘分区----高级格式化
注意:每个分区就是一个独立的逻辑磁盘。
2.磁盘的类型:
1)固定头磁盘:在每条磁道上都有一读/写磁头,所有的磁头都被装在一刚性磁臂中。通过这些磁头可访问所有各磁...
分类:
其他好文 时间:
2014-07-18 11:31:51
阅读次数:
164
给出来的数据量还是可以的。题意:有若干个牧场,至少有两个不连通,一个牧场的直径就是牧场中最远的两个牧区的距离。要求找出几个牧场中最短的直径,就是找一条路径连接几个牧区,使这个直径最终最小。
基本方法,把整个图根据输入划分成几个不连通的牧区,然后求出每个牧区的直径(即每个连通块中的最长路径),然后枚举两个不在同一牧区的点,设blocks[i]记录第i个节点所在连通块的直径,那么result = m...
分类:
其他好文 时间:
2014-07-18 11:04:46
阅读次数:
287
图概述
图(Graph)是一种比线性结构和树形结构都要复杂的数据结构。简单讲,图是由表示数据元素的的集合V和表示数据之间关系的集合E组成。其中,数据元素常称作顶点(vertex),数据之间的关系常称作边(edge)。故图可记为G=,其中V是顶点的有穷非空集合,E是边的集合。在图中顶点的前驱和后继是不设限制的,因此图描述的是一种网状关系。
无向图
若边是无序的或者说是无向的,则称此图是无向图。若无向图中有边(v1,v2)(无向图中边用圆括号表示),则显然(v2,v1)和(v1,v2)是同一条边。...
分类:
其他好文 时间:
2014-07-18 11:02:46
阅读次数:
278
通过软件设计师考试的感悟...
分类:
其他好文 时间:
2014-07-18 11:27:45
阅读次数:
153
本文介绍如何在kvm的虚拟环境下,部署实验LVS的DR模式。包括网络结构图,如何配置,以及使用tcpdump分析ip包。...
分类:
其他好文 时间:
2014-07-18 11:25:49
阅读次数:
288
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4790
题目大意:给出a,b,c,d,p,m,在[a,b]和[c,d]中分别选一个数x,y。问满足(x+y)%p=m的(x,y)有多少组,求出占总组数的比例
首先,当然是想遍历一遍,统计满足的有多少点,如此便能轻松愉快的解出此题;但是,真的是这样吗?
我们看一下数据范围,范围是10^9,如果两个数...
分类:
其他好文 时间:
2014-07-18 11:01:26
阅读次数:
187
题目链接:http://code.bupt.edu.cn/problem/p/417/
裸的01背包,不懂的同学可以看下本博客转载的《背包九讲》
代码:
#include
#include
#include
#include
#define N 11111
using namespace std;
int a[N];
long long b[N];
long long dp[N];
...
分类:
其他好文 时间:
2014-07-18 11:13:19
阅读次数:
137
题目链接:http://code.bupt.edu.cn/problem/p/426/
题意应该很好懂,只能是成波浪形的数,我们假设g[N]代表的事N个数的时候,第一个数比第二个数大的波浪形数(形如“ ∨∨∨∨”)的个数。由于在此种情况下,符合“∧∧∧∧”和“ ∨∨∨∨”这样的数目应该是相等的,所以我们首先算出g[n]之后再乘2,就OK了,
有了g[N],我们还可以得到如下dp方程:g[i]=...
分类:
其他好文 时间:
2014-07-18 11:08:21
阅读次数:
137
Codeforces Round #256 (Div. 2)
题目链接
A题:没什么好说的水题,判断一下两种各需要多少个,加起来看会不会超过即可
B题:首先计数字母,看b串有没有多余字符,判断掉need tree的情况,然后判断b是否能和a匹配,如果可以且长度不同,就是auto,如果不行且长度相同,就是array,否则就是both
C题:贪心,每次选择最低的去横向刷,刷完会多出几个...
分类:
其他好文 时间:
2014-07-18 11:25:01
阅读次数:
271
题目链接:http://code.bupt.edu.cn/problem/p/427/
一个很单纯的every-sg模型
代码:
#include
#include
#include
#include
#define N 100010
using namespace std;
int step[N];
int sg[N];
int stone[N];
vector g[N];
i...
分类:
其他好文 时间:
2014-07-18 11:34:05
阅读次数:
173