题目链接:uva 10237 - Bishops
题目大意:给出n和k,问在n?n的棋盘上放k个主教互相不攻击能有多少种方法,主教的攻击方式是斜线。
解题思路:将棋盘旋转45度,然后将黑白格子互相分开,因为在国际里面,黑格的主教是永远无法攻击到白格的主教。所以将黑白格分开考虑。
然后对于一种格子的颜色来说,它就类似与在一个棋盘上放车,dp[i][j]表示i行放了j个车,dp[i][j...
分类:
其他好文 时间:
2014-06-07 01:57:47
阅读次数:
216
Effective c++ 类的设计应该考虑的一些问题...
分类:
编程语言 时间:
2014-06-07 01:22:29
阅读次数:
273
effective java
1.考虑用静态工厂方法代替构造函数
对于一个类,为了让客户获得他的一个实例,最通常的方法是提供一个共有的构造函数。
实际上还有另外一种技术,尽管较少为人所知,但也应该成为每个程序员的工具箱中的一
部分,类可以提供一个公有的 静态工厂方法 。所谓静态工厂方法,实际上只是一个简单
的静态方法,他返回的是类的一个实例。
类可以提供一些静态工厂方法...
分类:
编程语言 时间:
2014-06-05 11:47:22
阅读次数:
337
为什么要实现软件定时器:
在芯片上,地址空间也是相当宝贵的,如果保留了更多的硬件定时器的话,就需要更多的地址空间,那么我们能不能作个折中方案呢?答案是肯定的,我们可以使用一个硬件定时器,来模拟实现一个软件定时器,可以满足更多的定时需求,需要注意的一点就是软件定时器精度可能会有稍微误差,因为会涉及到任务调度、锁中断等,在对定时精度要求不高的场景,可以考虑使用软件定时器。Linux内核中的timer...
分类:
其他好文 时间:
2014-06-05 11:38:35
阅读次数:
242
这道题之前在Cracking the Coding interview上做过类似的,一样的三次反转,即可得到,时间复杂度为O(n),空间复杂度为O(1)。这道题在九度OJ上测试,主要要考虑移动的位数大于字符串长度时的情况,取余即可。...
分类:
其他好文 时间:
2014-06-05 09:34:36
阅读次数:
236
如果表字段太多,如果表中有些字段比较大,即便是你只查有限的几个字段,在做表关联和全表扫的时候,由于扫描的数据块多,性能方面还是会不理想。因为oracle扫描的时候是按照块为单位扫描,读取的时候也是按块为单位读取,所以这种功能无法在SQL层面上优化的时候,可以考虑做数据的垂直切分,下面来做个试验:
--制造数据不做垂直切分
create table test(
a number,
...
分类:
数据库 时间:
2014-06-05 06:12:44
阅读次数:
356
用于大型程序的工具--异常处理[续2]八、自动资源释放 考虑下面函数:void f()
{
vector v;
string s;
while (cin >> s)
{
v.push_back(s);
}
string *p = new string[v.size()];
//...
delete p;
}
在正...
分类:
编程语言 时间:
2014-06-05 06:07:27
阅读次数:
393
把横的和竖的分开考虑
//#pragma comment(linker, "/STACK:102400000,102400000")
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace...
分类:
其他好文 时间:
2014-06-05 06:04:58
阅读次数:
238
题目来源:HDU 3367 Pseudoforest
题意:每个连通块最多可以有一个环 求最大的森林
思路:考虑最大生成树 如果祖先一样没有环 那就合并 如果祖先不一样 如果2棵树都没有环 合并 如果有1棵树有环 合并 标记该棵树有环
#include
#include
#include
using namespace std;
const int maxn = 100010;
str...
分类:
其他好文 时间:
2014-06-05 05:35:03
阅读次数:
261
网站规模到了一定程度之后,该分的也分了,该优化的也做了优化,但是还是不能满足业务上对性能的要求;这时候我们可以考虑使用主从库。主从库是两台服务器上的两个数据库,主库以最快的速度做增删改操作+最新数据的查询操作;从库负责查询较旧数据,做一些对实效性要求较小的分析,报表生成的工作。这样做将数据库的压力分...
分类:
数据库 时间:
2014-05-31 13:59:59
阅读次数:
280