uva--10131Is Bigger Smarter? +dp
来源:互联网 发布:mac qq远程 外置 编辑:程序博客网 时间:2024/06/02 03:36
题意:
有人说大象越重就越聪明,为了推翻的它的结论,给你一组大象的体重和智商的数组,你需要找出一组最长的随着体重增加智商下降的序列。
思路:
按照体重排一下序,然后就变成求一个智商最长下降子序列的问题了。
代码如下:
#include<iostream>#include<cstring>#include<cstdio>#include<algorithm>using namespace std;typedef struct{ int w,s; int id;}P;P p[1100];int cmp(P p1,P p2){ return p1.w<p2.w;}int fa[1100],max1=-1;void print(int i){ if(max1--) { print(fa[i]); printf("%d\n",p[i].id); }}int main(){ int i,j,x,y,n=1; while(scanf("%d%d",&x,&y)!=EOF) { p[n].w=x; p[n].s=y; p[n].id=n; n++; } sort(p+1,p+n,cmp); int dp[1100]; memset(fa,-1,sizeof(fa)); for(i=1;i<n;i++) dp[i]=1; for(i=1;i<n;i++) for(j=1;j<i;j++) { if(p[i].s<p[j].s&&dp[i]<dp[j]+1) { dp[i]=dp[j]+1; fa[i]=j; } } int t; for(i=1;i<n;i++) if(dp[i]>max1) max1=dp[i],t=i; printf("%d\n",max1); print(t); return 0;}
1 0
- UVA 10131 Is Bigger Smarter? DP
- UVa 10131 Is Bigger Smarter? (DP&LIS)
- UVA 10131 Is Bigger Smarter ? DP ,Commencel
- UVA 10131 Is Bigger Smarter? (DP)
- Is Bigger Smarter? - UVa 10131 dp
- 【DP】UVA 10131 Is Bigger Smarter? LIS
- UVA 10131 Is Bigger Smarter?(DP)
- Uva 10131-Is Bigger Smarter?(DP)
- uva--10131Is Bigger Smarter? +dp
- UVa 10131 Is Bigger Smarter?
- UVa 10131 Is Bigger Smarter?
- UVA 10131 - Is Bigger Smarter
- uva 10131 Is Bigger Smarter?
- uva:10131 - Is Bigger Smarter?
- uva 10131 Is Bigger Smarter?
- UVA 10131 Is Bigger Smarter?
- UVA 10131 Is Bigger Smarter?
- UVa 10131 - Is Bigger Smarter?
- 【MongoDB】MongoDB之遗漏知识点
- 字符统计2
- 雷军自曝小米成功诀窍:你也能学会
- ios面试题(转载备用)
- 微软2015校园招聘 技术类职位在线笔试-题目1 : Browser Caching
- uva--10131Is Bigger Smarter? +dp
- BCB对如何操作ini文件?
- 2014年12月13日在格尔木的22天
- Python 中的 classmethod 和 staticmethod
- windows 自制后台运行进程、exe开机自启动服务
- const和#define的区别
- 柯南君:看大数据时代下的IT架构(3)消息队列之RabbitMQ-安装、配置与监控
- 获取已经安装APK的路径 多进程Preferences数据共享 泛型ArrayList转数组 保存恢复ListView当前位置 调用便携式热点和数据共享设置 格式化 文件夹排
- NSSting常用函数及初始化方式