Description
The alphabet of Freeland consists of exactly N letters. Each sentence of Freeland language (also known as Freish) consists of exactly M letters without word breaks. So, there exist exactly...
分类:
其他好文 时间:
2015-03-09 21:00:06
阅读次数:
146
爬楼梯,一次爬一层或两层,要爬n层,有几种方法 本题有一个简单的递推式:f(n)=f(n?1)+f(n?2) 注意点: 注意n的边界 注意不要使用递归求解,会爆栈以及浪费大量时间 class Solution {public: int climbStairs(int n) { if (n < 0) ...
分类:
其他好文 时间:
2015-03-09 10:40:38
阅读次数:
123
题目大意:给出一个沙漏,包含一个倒三角和一个三角,每个方格有一个0到9的数字,从顶上某格走到底下某格,求得到一个特殊值的路径有多少条,并输出字典序最小的。路径用一个起点和一系列'L'和'R'的字符表示。
用a[i][j]表示第i行第j列的数字。由于要求字典序最小的,所以从下往上递推。用d[i][j][u]表示在(i,j)且和为u的路径有多少条,在上半部分是倒三角,可以由d[i+1][j]...
分类:
其他好文 时间:
2015-03-09 09:27:02
阅读次数:
270
挺水的一道线段树+DP题。可以从底往上添加线段,每添加线段之前查询端点所被覆盖的区间线段。再从最顶往下DP,每次从端点出发,递推覆盖该端点的区间线段的两端的值即可。 1 #include 2 #include 3 #include 4 #include 5 #include ...
分类:
其他好文 时间:
2015-03-09 00:18:32
阅读次数:
274
题意:在一条路上有 n 个站点,并给定了每个站点的坐标,然后想要在 k 个站点旁边分别各建一个补给站,求所有站点到最近的补给站的距离和的最小值。是的,毫无疑问,显然是 DP 问题,但是这题怎么递推还是需要考虑的,我一开始是以 dp [ k ] [ i ] 表示设好第 k 个补给站并讨论到第 i 个站...
分类:
其他好文 时间:
2015-03-08 22:53:50
阅读次数:
161
在棋盘上尽可能地摆主教,要求互不攻击高精度,注意0和1。#include#includechar s[105];int l,i,j,a[105];int main(){ while(scanf("%s",&s)!=EOF){ l=strlen(s); memset(a,0,size...
分类:
其他好文 时间:
2015-03-08 15:44:18
阅读次数:
181
高精度模版(bin神的)
/*
* 高精度,支持乘法和加法
*/
struct BigInt
{
const static int mod = 10000;
const static int DLEN = 4;
int a[600],len;
BigInt()
{
memset(a,0,sizeof(a));
len =...
分类:
其他好文 时间:
2015-03-08 14:21:55
阅读次数:
174
这是一类开关问题,对于这类问题可以状态压缩枚举搞,也可以用高斯消元,当数据量比较大的时候高斯消元效率更高。
poj 1222
状态压缩枚举第一行所有的翻转情况,从第二行开始依次递推即可。
#include
#include
#include
#include
#include
using namespace std;
int dx[5]={0,...
分类:
其他好文 时间:
2015-03-08 14:19:01
阅读次数:
200
题目大意:约瑟夫问题,求最后被删除的三个人的编号,编号从1开始。
用d[i][0]表示倒数第三个被删除的,d[i][1]表示倒数第二个,d[i][2]表示最后一个。考虑删除掉第一个人以后从d[i-1][0…2]递推而来。对d[i-1][0…2]重新编号以完成递推(实际上d[i][0…2]可以看成对于第一个人的相对偏移位置)。
状态转移方程:
d[i][0]=(d[i-1][0]+(m...
分类:
其他好文 时间:
2015-03-08 09:20:20
阅读次数:
137
题目大意:有一个n(1
用d[i][j]表示到第i行第j列时,前i行j列能产生的最大的矿数量,用a[i][j]表示在第i行从第1列加到第j列的yeyenum矿,用b[i][j]表示bloggium矿在第j列从第1行加到第i行,根据第i行第j列的格子向左还是向上递推,要么向左,第i行全部向左,要么向上,第j列全部向上。
状态转移方程:d[i][j]=max { d[i-1][j]...
分类:
其他好文 时间:
2015-03-08 01:26:14
阅读次数:
162