UP UP UP!

Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 92  Solved: 27
SubmitStatusWeb Board

Description

题意很简单,给你长度为n的序列,找出有多少个不同的长度为m的严格上升子序列。(PS:相同子序列的定义为,每一个元素对应的下标都相同)

Input

输入数据第一行是个正整数T,表示总共有T组测试数据(T <= 5); 每组数据第一行为n和m,以空格隔开(1 <= n <= 100, 1 <= m <= n); 第二行为n个数,第i个数ai依次代表序列中的每个元素(1 <= ai <= 10^9);

Output

对于每组数据,输出一行Case #x: y,x表示当前测试数据的序号(从1开始),y表示结果。 需要注意的是,结果有可能很大,你需要将结果对1000000007(10^9+7)取余。

Sample Input

2 3 2 1 2 3 3 2 3 2 1

Sample Output

Case #1: 3 Case #2: 0
题解:
dp[i][j]代表前i个人j个递增子序列的长度;
if(a[i] > a[k])dp[i][j] = dp[i][j] + dp[k][j - 1](k < i);
代码:

 #include<iostream>
#include<cmath>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std;
const int MAXN = ;
int dp[MAXN][MAXN];
int a[MAXN];
const int MOD = 1e9 + ;
int main()
{
int T, kase = , n, m;
scanf("%d", &T);
while (T--) {
scanf("%d%d", &n, &m);
for (int i = ; i <= n; i++) {
scanf("%d", a + i);
}
memset(dp, , sizeof(dp));
for (int i = ; i <= n; i++) {
dp[i][] = ;
for (int j = ; j <= i; j++) { for (int k = ; k < i; k++) { if (a[k] < a[i]) { dp[i][j] = (dp[i][j] + dp[k][j - ]) % MOD; // printf("%d %d\n",i ,j);
}
}
}
}
int ans = ;
for(int i = ; i <= n; i++)ans = (ans + dp[i][m]) % MOD; //wocao
printf("Case #%d: %d\n", ++kase, ans);
}
return ;
} /**************************************************************
Problem: 1868
User: handsomecui
Language: C++
Result: Accepted
Time:18 ms
Memory:1376 kb
****************************************************************/

UP UP UP!(dp)的更多相关文章

  1. BZOJ 1911: [Apio2010]特别行动队 [斜率优化DP]

    1911: [Apio2010]特别行动队 Time Limit: 4 Sec  Memory Limit: 64 MBSubmit: 4142  Solved: 1964[Submit][Statu ...

  2. 2013 Asia Changsha Regional Contest---Josephina and RPG(DP)

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=4800 Problem Description A role-playing game (RPG and ...

  3. AEAI DP V3.7.0 发布,开源综合应用开发平台

    1  升级说明 AEAI DP 3.7版本是AEAI DP一个里程碑版本,基于JDK1.7开发,在本版本中新增支持Rest服务开发机制(默认支持WebService服务开发机制),且支持WS服务.RS ...

  4. AEAI DP V3.6.0 升级说明,开源综合应用开发平台

    AEAI DP综合应用开发平台是一款扩展开发工具,专门用于开发MIS类的Java Web应用,本次发版的AEAI DP_v3.6.0版本为AEAI DP _v3.5.0版本的升级版本,该产品现已开源并 ...

  5. BZOJ 1597: [Usaco2008 Mar]土地购买 [斜率优化DP]

    1597: [Usaco2008 Mar]土地购买 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 4026  Solved: 1473[Submit] ...

  6. [斜率优化DP]【学习笔记】【更新中】

    参考资料: 1.元旦集训的课件已经很好了 http://files.cnblogs.com/files/candy99/dp.pdf 2.http://www.cnblogs.com/MashiroS ...

  7. BZOJ 1010: [HNOI2008]玩具装箱toy [DP 斜率优化]

    1010: [HNOI2008]玩具装箱toy Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 9812  Solved: 3978[Submit][St ...

  8. px、dp和sp,这些单位有什么区别?

    DP 这个是最常用但也最难理解的尺寸单位.它与“像素密度”密切相关,所以 首先我们解释一下什么是像素密度.假设有一部手机,屏幕的物理尺寸为1.5英寸x2英寸,屏幕分辨率为240x320,则我们可以计算 ...

  9. android px转换为dip/dp

    /** * 根据手机的分辨率从 dp 的单位 转成为 px(像素) */ public int dipTopx(Context context, float dpValue) { final floa ...

  10. POJ 3254. Corn Fields 状态压缩DP (入门级)

    Corn Fields Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 9806   Accepted: 5185 Descr ...

随机推荐

  1. python部分排序算法(网友提供)

    // 冒泡排序 def bubble(x,n):    '''This function orders the original items x x is list,n is the length o ...

  2. [Immutable.js] Exploring Sequences and Range() in Immutable.js

    Understanding Immutable.js's Map() and List() structures will likely take you as far as you want to ...

  3. LR脚本自定义显示Controller虚拟用户状态

    在场景监控的过程中,想知道场景运行时Vusers的运行状态以及每一个Vuser虚拟用户在本次场景运行的过程共迭代了多少次,那么就需要在VuGen脚本中自定义显示虚拟用户状态信息. 代码如下: stat ...

  4. Jquery on() 动态绑定事件

    之前就一直受这个问题的困扰,在jQuery1.7版本之后添加了on方法,之前就了解过,其优越性高于live(),bind(),delegate()等方法,在此之前项目中想用这个来测试结果发现,居然动态 ...

  5. ajax参数中出现空格

    jquery中发起ajax请求时的参数名中不能有空格.如果是get请求参数的中的空格会变成“+”符而在post请求中看不到这种变化,但无论哪种情况都无法与服务接口的参数就行匹配(此时进行调试也不会触发 ...

  6. 在 Xcode中 修改文件中自动创建的Created by和Copyright

    在Xcode里创建的时候,会自动生成注释 //  Created byxxx on 15/7/10. //  Copyright (c) 2015年 xxxx. All rights reserved ...

  7. VLD 1.0 ReadMe翻译尝试

    近期想学习下VLD的实现,打算从最简单的V1.0版本看起.以下是V1.0版本自己尝试翻译下,最新的2.x版本似乎强大了很多. 简介 Visual C++提供了内置的内存检测机制,但其充其量只满足了最小 ...

  8. Cortex-M3寄存器等基础知识

    1.寄存器 CM3拥有R0~R15通用寄存器和一些特殊功能寄存器 R0~R12这些通用寄存器,复位初始值都是不可预料的 2.CM3有R0到R15的通用寄存器组 注:绝大部分的16位thumb只能访问R ...

  9. Mysql常用命令行大全(转)

    第一招.mysql服务的启动和停止 net stop mysql net start mysql 第二招.登陆mysql 语法如下: mysql -u用户名 -p用户密码 键入命令mysql -uro ...

  10. 10 个十分难得的 javascript 开发经验

    Javascript 的很多扩展的特性是的它变得更加的犀利, 同时也给予程序员机会创建更漂亮并且更让用户喜欢的网站. 尽管很多的开发人员都乐于颂扬 javascript,但是仍旧有人看到它的阴暗面. ...