hdu4293Groups dp
来源:互联网 发布:php文件管理插件 简洁 编辑:程序博客网 时间:2024/03/29 08:30
//n个人,每个人说出在他所在组前面的人的个数a和在他组后面的人的个数b//其中有些人说真话有些人说假话,问最多有多少有多少个人说真话//对于每个人所说的话,可以推测他所在区间为[a+1,n-b]//可以用dp[i] 表示右区间到i得到的最大的说真话的人的个数//用map[i][j]表示右区间为i其左区间前面一个数为j的人的个数#include<cstdio>#include<cstring>#include<iostream>#include<vector>using namespace std ;const int maxn = 510 ;int map[maxn][maxn] ;int dp[maxn] ;int main(){ int n ; while(~scanf("%d" , &n)) { int a , b ; memset(map , 0 , sizeof(map)) ; for(int i = 1;i <= n;i++) { scanf("%d%d" , &a , &b) ; if((a+b+1) > n)continue ; if(n-b <= a)continue ; if(map[n-b][a] == (n-b-a))continue ; map[n-b][a]++ ; } dp[0] = 0 ; for(int i = 1;i <= n;i++) { dp[i] = 0 ; for(int j = 0;j < i;j++) dp[i] = max(dp[j]+map[i][j] , dp[i]) ; } cout<<dp[n]<<endl; } return 0 ;}
0 0
- hdu4293Groups dp
- dp
- dp
- dp
- 【DP】
- dp
- dp
- DP
- DP
- DP
- DP
- DP
- dp
- DP
- dp
- DP
- DP
- dp
- hdu4267A Simple Problem with Integers 线段树
- Hibernate 不同数据库的连接及SQL方言
- 位,字节,字的区别
- LeetCode(79) Word Search
- ZOJ 1115
- hdu4293Groups dp
- C#实现的等额本息法、按月付息到期还本法、一次性还本付息法
- Longest Common Prefix
- 33、lamp安装
- 达内学习日志Day19:Java核心API(集合<二>)
- hdu4296Buildings 贪心
- 资讯:体感技术Kinect
- Maven学习总结(九)——使用Nexus搭建Maven私服
- 第六周项目(5):后缀表达式