这个题在POJ上有,地址是:http://acm.pku.edu.cn/JudgeOnline/problem?id=2411以前做过这个题,是用状态DP来做的。大致说下方法,DP需要用到两维,一维表示到达哪一行,另一维表示这一行的状态。用二进制来表示假定方格为N行M列。表示方法如下:f[i][j]。----i表示第i行,j表示该行的二进制状态。而f[i][j]则记录由i,j构成的状态有多少种摆法。我举个例子,假定总共有4行5列。如下状态:*号表示被铺了方块,0表示尚未被铺方块。******0**00000000000可以看到第2行的状态为*0**0,即用二进制来表示就是10110,即f[2] Read More
posted @ 2013-04-05 21:37
upon77
Views(185)
Comments(0)
Diggs(0)
转自:http://blog.csdn.net/tianshuai11/article/details/7838142n个人拿着2元去买票。票价一元,且售票元只能用n个人购票的一元给2元的找零。问有几种排列方法 分析:卡特兰数方法 递推公式:F(2*n) =F(0)*F(2(n-1)) +F(1)*F(2(n-2))+……+F(2(n-1))*F(0) F(n) =F(0)*F(n-1) +F(1)*F(n-2)+……+F(n-1)*F(0) 解答: 所有序列的个数 :C (2n,n) (ps:由于数学函数难打... Read More
posted @ 2013-04-05 21:20
upon77
Views(208)
Comments(0)
Diggs(0)
转自:http://www.cnblogs.com/memewry/archive/2012/08/25/2656966.html1、线程与进程的区别联系2、进程通信方式有哪些?3、同步的方式有哪些?4、ThreadLocal与其它同步机制的比较5、进程死锁的条件第一题:(1)线程是进程的一个实体,一个进程可以拥有多个线程,多个线程也可以并发执行。一个没有线程的进程也可以看做是单线程的,同样线程也经常被看做是一种轻量级的进程。并且进程可以不依赖于线程而单独存在,而线程则不然。(2)进程是并发程序在一个数据集合上的一次执行过程,进程是系统进行资源分配和调度的独立单位,线程是进程的实体,它是比进程 Read More
posted @ 2013-04-05 15:09
upon77
Views(188)
Comments(0)
Diggs(0)
转自:http://www.cnblogs.com/memewry/archive/2012/08/22/2651696.html一、进程/线程间同步机制。临界区、互斥区、事件、信号量四种方式临界区(Critical Section)、互斥量(Mutex)、信号量(Semaphore)、事件(Event)的区别1、临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。在任意时刻只允许一个线程对共享资源进行访问,如果有多个线程试图访问公共资源,那么在有一个线程进入后,其他试图访问公共资源的线程将被挂起,并一直等到进入临界区的线程离开,临界区在被释放后,其他线程才可以抢占 Read More
posted @ 2013-04-05 12:12
upon77
Views(158)
Comments(0)
Diggs(0)