题目连接:uva 11174 - Stand in a Line
题目大意:村子里有n个村名民,现在他们要排成一列,处于对长辈的尊敬,他们不能排在自己父亲的前面,有些人的父亲不一定在村子了。问有多少种列的顺序。
解题思路:【算法竞赛入门经典-训练指南】的例题,主要还用到了欧几里得拓展定理求逆元。
#include
#include
#include
using namespa...
分类:
其他好文 时间:
2014-05-22 13:24:44
阅读次数:
179
题目链接:11481 - Arrange the Numbers
题意:序列1-n,进行重排,问最后前m个中有k个仍然位置不变的情况数
思路:之前写过UVA 580, n个数重排,要求每个位置都不同的情况的题目,递推式为dp[i] = (i - 1) * (dp[i - 1] + dp[i - 2])
利用这个,这题只要:
k个位置C(m, k) * sum(C[n - m][i] (后面...
分类:
其他好文 时间:
2014-05-22 10:45:52
阅读次数:
191
题目链接:1073 - Glenbow Museum
题目大意:一个边平行与坐标轴的多边形,可以通过描述角的方式来表示,R表示90度,O表示270度,现在给出序列的长度L,问可以构造出多少种不同的多边形,要求构造出来的多边形在内部有一点可以看到边界的每一个点(我的理解应该是凸多边形)。
解题思路:首先确定是一个凸多边形,所以不可能有两个O相邻,并且在整个序列中,要有4个的RR(即两个R...
分类:
其他好文 时间:
2014-05-22 09:05:42
阅读次数:
272
UVA 10237 - Bishops
题目链接
题意:问一个n * n棋盘能放k个主教(攻击斜线)的方案数。
思路:递推,首先考虑一个问题,在一个n?n棋盘上,放k个车的方案数。
那么设dp[i][j]为i行用了j个车的方案数,由于每行只能放一个车,那么考虑i行放不放车,如果放车,那么能放的位置有n?(j?1)个位置,为dp[i?1][j?1]?(n?(j?1))。
如果不放那...
分类:
其他好文 时间:
2014-05-22 07:57:05
阅读次数:
148
有关字符串相关比较问题,一般处理方法都选择动态规划处理方法。或者是单个循环,或者是多个循环;dp遇到这种两个串的问题,很容易想到DP。但是这道题的递推关系不明显。可以先尝试做一个二维的表int[][]
dp,用来记录匹配子序列的个数(以S="rabbbit",T="rabbit"为例): r a b...
分类:
其他好文 时间:
2014-05-21 23:01:16
阅读次数:
229
无聊写了个高精度模板玩玩...... 1 /* 2 高精度(压位储存) 3 */ 4
#include 5 #include 6 #include 7 #include 8 #include 9 const int
MAX=10005;//最长长度 10 using ...
分类:
其他好文 时间:
2014-05-21 19:47:19
阅读次数:
588
题目链接:uva 11645 - Bits
题目大意:给出n,问从0到n这n+1个数种,数的二进制情况下,有多少11存在。
解题思路:和uva 11038一个类型的题目,只是这道题目是对于二进制下的情况。而且高精度部分可以用两个long long数解决。
#include
#include
typedef long long ll;
const int N = 100;
con...
分类:
其他好文 时间:
2014-05-21 11:17:49
阅读次数:
222
java中基本数据类型与对象引用类型的默认初始化值学习
8种基本数据类型的所占存储空间大小,最大值,最小值,及两个高精度类型。...
分类:
编程语言 时间:
2014-05-20 16:21:35
阅读次数:
278
戳我去解题Given two binary strings, return their sum
(also a binary string).For example,a ="11"b
="1"Return"100".分析:高精度加法,只是将10进制的高精度加法 换成了 2进制的高精度加法首先将 两个...
分类:
其他好文 时间:
2014-05-20 11:21:52
阅读次数:
224