博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU-1160 FatMouse's Speed
阅读量:5086 次
发布时间:2019-06-13

本文共 1328 字,大约阅读时间需要 4 分钟。

#include 
#define pb push_back#define _for(i,a,b) for(int i = (a);i < (b);i ++)#define INF 0x3f3f3f3f#define sz size()using namespace std;const int maxn = 50003;typedef long long ll;struct Mouse{ int w; int s; int in; bool operator < (Mouse b) { if(w!=b.w) return w < b.w; return s > b.s; }};int main(){ Mouse a[1003]; int aend = 0; int c,d; while(~scanf("%d %d",&c,&d)) { a[aend].w = c; a[aend].in = aend+1; a[aend++].s = d; } sort(a,a+aend); int dp[aend]; _for(i,0,aend) dp[i] = 1; for(int i = 1;i < aend;i ++) for(int j = 0;j < i;j ++) { if(a[i].w==a[j].w) continue; if(a[i].s < a[j].s) dp[i] = max(dp[i],dp[j]+1); } vector
rrnt; int ii; int rr = 0; for(int i = aend-1;i >= 0;i --) if(rr < dp[i]) { ii = i; rr = dp[i]; } cout << dp[ii] << endl; int rnt = dp[ii]; rrnt.pb(a[ii].in); for(int i = ii-1;i >= 0;i --) if(dp[i]==rnt-1) { rnt --; rrnt.pb(a[i].in); } for(int i = rrnt.size()-1;i >= 0;i --) cout << rrnt[i] << endl; return 0;}

 

转载于:https://www.cnblogs.com/Asurudo/p/10650013.html

你可能感兴趣的文章
【3.1】Cookiecutter安装和使用
查看>>
【2.3】初始Django Shell
查看>>
Linux(Centos)之安装Redis及注意事项
查看>>
C语言和C++语言中关于NULL 的定义
查看>>
66. Plus One
查看>>
java 正则表达式
查看>>
[WPF]控件应用多个样式(转)
查看>>
固化命令的方式、sed文本处理工具
查看>>
Eclipse中的SVN操作
查看>>
Maven仓库分类
查看>>
正则表达式总结
查看>>
JavaWeb之Servlet的生命周期
查看>>
maven学习
查看>>
程序4-3 umask函数实例
查看>>
GitHub上那些值得一试的JAVA开源库
查看>>
linux 删除暂时无用内容
查看>>
centos 7 删除 virbr0 虚拟网卡virsh net-list
查看>>
一个简单的Maven小案例
查看>>
Wireshark分析DHCP
查看>>
vue/npm 错误提示&解决
查看>>