https://vjudge.net/contest/430905#problem/C
给出猫的体重和对应的速度,要求是得到一个体重上升的子序列的同时,速度必须是严格下降的序列。
请输出最长的这样的子序列,并且输出这些猫的原本的序号。
我们需要一个结构体来记录猫的体重,速度和序号。按照速度下降来排序,最后转化成了求体重的最长上升子序列。
这答案多种,取任意一个即可。

#include<iostream>
#include<algorithm>
using namespace std;
struct mouse
{int a,b,c;
} m[1005];
bool cmp(mouse x,mouse y)
{if(x.b!=y.b) return x.b>y.b;else return x.a<y.a;
}
int main()
{int n=0;int x,y;while(cin >> x>>y){n++;m[n].a=x;m[n].b=y;m[n].c=n;}sort(m+1,m+1+n,cmp);int d[1005]={0},maxx=0,rr[1005];for(int i=2; i<=n; i++)//这是最长上升子序列的套路{for(int j=i-1; j>=1; j--){if(m[i].a>m[j].a&&m[i].b<m[j].b)//限制体重的同时,别忘了速度是严格下降的{d[i]=max(d[j]+1,d[i]);//状态转移方程,用d标记了当前体重的最大长度maxx=max(d[i],maxx);//一直更新子序列的最大长度}}}cout << maxx+1 << endl;int r=maxx,minn=100000;x=0;for(int i=n;i>=1,r>=0;i--)//这一步必须反向遍历,后面的大的值一定是由前面小值得到的,而前面小值的后面不一定有大值//这里的大是指子序列长度{if(d[i]==r&&m[i].a<minn){rr[r]=m[i].c;//标记序号minn=m[i].a;//更新当前长度最大值的体重的最大值r--;}}for(int i=0;i<=maxx;i++){cout << rr[i]<< endl;}return 0;
}

FatMouse‘s Speed相关推荐

  1. 序列输出ZOJ1108 FatMouse's Speed

    PS:今天上午,非常郁闷,有很多简单基础的问题搞得我有些迷茫,哎,代码几天不写就忘.目前又不当COO,还是得用心记代码哦! ZOJ1108 FatMouse's Speed 最长下落子序列,这题挺好的 ...

  2. HDU1160 FatMouse's Speed —— DP

    题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=1160 FatMouse's Speed Time Limit: 2000/1000 MS ...

  3. FatMouse's Speed

    FatMouse's Speed // File Name: hdu1160.cpp // Author: rudolf // Created Time: 2013年04月25日 星期四 14时47分 ...

  4. FatMouse's Speed(LIS+路径记录)

    题目:FatMouse's Speed 题解:采用O(n^2)的LIS算法,用path记录路径 #include<bits/stdc++.h> using namespace std; t ...

  5. J - FatMouse's Speed

    J - FatMouse's Speed 题目入口:J - FatMouse's Speed 解题思路 这道题要求我们排出最大的体重越来越大速度越来越慢的老鼠序列. 首先我们需要一个结构体存放每个老鼠 ...

  6. HDOJ 1160 FatMouse's Speed

    第一个用动态规划完成的题目O(∩_∩)O哈哈~.忘记赋值之前的判断了,结果悲剧WA,算是第一次使用动态规划的一个小教训吧. View Code 1 //#include <fstream> ...

  7. HDU1160:FatMouse's Speed(最长上升子序列,不错的题)

    题目: http://acm.hdu.edu.cn/showproblem.php?pid=1160 学的东西还是不深入啊,明明会最长上升子序列,可是还是没有A出这题,反而做的一点思路没有,题意就不多 ...

  8. hdu-acm steps FatMouse's Speed

    本想用暴力法先试试的,案例和自己找的数据都过掉了,但是始终wa,本来期待的是tle,结果始终wa.所以也就懒的管了,直接用dp来做了.主要是因为最近在刷暴力法和dp这两个专题,所以才想好好利用一下这道 ...

  9. HDU - 1160 FatMouse's Speed(最长不下降子序列)

    题目链接:点击查看 题目大意:给出许多二元组(W,S),最后要求输出最长的满足W严格递增,S严格递减的子序列长度,以及方案,输出任意一种即可 题目分析:看起来像二维偏序,其实对任意一维排序后求最长不下 ...

  10. FatMouse's Speed hdu 1160(动态规划,最长上升子序列+记录路径)

    http://acm.hdu.edu.cn/showproblem.php?pid=1160 题意:现给出老鼠的体重与速度,要求你找出符合要求的最长子序列.       要求是 W[m[1]] < ...

最新文章

  1. LeetCode-剑指 Offer 06. 从尾到头打印链表
  2. 数据中心或许会成为未来5G最强大的技术支撑
  3. java 删除二进制内容_二进制搜索树节点删除
  4. smarty基本语法之判断,循环语句
  5. tnsnames.ora 监听配置文件详解
  6. 关于C中字符串的输入和输出使用的函数不同所造成的影响
  7. 传说中的WCF(4):发送和接收SOAP头
  8. pb数据窗口显示图片_AkShare股票数据A股市净率
  9. bzoj千题计划176:bzoj1199: [HNOI2005]汤姆的游戏
  10. 《如何克服社交焦虑》- (美)埃伦·亨德里克森著;冯晓霞译
  11. ENVI5.3+PolSARpro5.0环境下高分三号双极化数据预处理及地理编码
  12. 灵感爆发:An/flash 影片剪辑动画播放一遍后,摆脱paly()的控制
  13. 关于Latex学习网站推荐
  14. P02014132 魏思奇 对信息论几个问题的一些看法
  15. 老梁说天下——慈善的红与黑
  16. Java编程笔记6:接口
  17. 优美图案c语言程序,C语言经典例题100例——C语言练习实例65解答(一个最优美的图案)...
  18. 如何在CentOS8服务器上启用PowerTools
  19. IDEA中maven配置解决jar包下载报错,亲测好用
  20. Bia布刷题日记 2022/2/16

热门文章

  1. 免费Mac思维导图软件,丰富模板任你选
  2. 芯片制造行业患的是普通感冒还是流行感冒?
  3. 实例介绍机械臂运动规划及前沿研究方向
  4. 宅生活健康助手:把化学清洁剂赶出家门
  5. Egret《决战沙城》框架学习
  6. 《皇室战争》体验报告:游戏时长被无限拉长
  7. 2007-08书签存档
  8. asp.net 仓库管理系统vs编程sqlserver数据库c#源码
  9. linux下安装jdk和安装后版本不一致的情况
  10. java短信接口发送的这三种短信,你收到过几种?