**

先把题目贴一贴:

描述describe:
牛在饲料槽前排好了队。饲料槽依次用 11 到 N(1\le N \le 2000)N(1≤N≤2000) 编号。每天晚上,一头幸运的牛根据约翰的规则,吃其中一些槽里的饲料。

约翰提供 NN个区间的清单。一个区间是一对整数 l,r(1\le l \le r \le N)l,r(1≤l≤r≤N),表示一些连续的饲料槽,比如 1-3,7-8,3-41−3,7−8,3−4 等等。牛可以任意选择区间,但是牛选择的区间不能有重叠。

当然,牛希望自己能够吃得越多越好。给出一些区间,帮助这只牛找一些区间,使它能吃到最多的东西。

在上面的例子中,1-31−3 和 3-43−4 是重叠的;聪明的牛选择 {1-3,7-8}1−3,7−8 ,这样可以吃到 55 个槽里的东西。
**

输入scanf
第一行,整数 N(1\le N\le 2000)N(1≤N≤2000)。

第 22 到 N+1N+1 行,每行两个整数,表示一个区间,较小的端点在前面。

输出
仅一个整数,表示最多能吃到多少个槽里的食物。

输入样例

3
1 3
7 8
3 4

输出样例

5

这道题呢,小编A的时候有点凌乱,不过大家也别介意(因为我会给你们找些坑的 )

好了,进入正轨

喔艹
第一次看这道题好变态
要用到

  • 数的划分
  • 字符串拼接
  • 。。。。。。

不过聪明的我还是找到解决办法了

先把前后范围用结构体保存一下

struct node{int l,r;
};

再写个cmp排序函数
这样我们就有足够的发挥空间了

话不多说,上全局代码
还是那句话Harden MVP!!!

#include<bits/stdc++.h>
using namespace std;int dp[2010];struct node{int l,r;
};node a[2010];bool cmp(const node &x,const node &y){return x.r<y.r;
}int main(){int n;scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%d %d",&a[i].l,&a[i].r);}sort(a+1,a+1+n,cmp);int ans=dp[1]=a[1].r-a[1].l+1;for(int i=2;i<=n;i++){dp[i]=a[i].r-a[i].l+1;for(int j=1;j<=i-1;j++){if(a[j].r<a[i].l){dp[i]=max(dp[i],dp[j]+(a[i].r-a[i].l+1));}    }ans=max(ans,dp[i]);}printf("%d",ans);return 0;
}

YCOJ~饥饿的奶牛相关推荐

  1. bzoj1669[Usaco2006 Oct]Hungry Cows饥饿的奶牛*

    bzoj1669[Usaco2006 Oct]Hungry Cows饥饿的奶牛 题意: 求最长单调递增子序列,序列大小≤5000 题解: 蒟蒻弱写了一个O(n^2)的. 代码: 1 #include ...

  2. [BZOJ1669][Usaco2006 Oct]Hungry Cows饥饿的奶牛

    1669: [Usaco2006 Oct]Hungry Cows饥饿的奶牛 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 1000  Solved: 6 ...

  3. bzoj 1669: [Usaco2006 Oct]Hungry Cows饥饿的奶牛

    1669: [Usaco2006 Oct]Hungry Cows饥饿的奶牛 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 990  Solved: 64 ...

  4. 洛谷P1868 饥饿的奶牛 题解

    洛谷P1868 饥饿的奶牛 题解 题目链接:P1868 饥饿的奶牛 题意: 有一条奶牛冲出了围栏,来到了一处圣地(对于奶牛来说),上面用牛语写着一段文字. 现用汉语翻译为: 有 NNN 个区间,每个区 ...

  5. bzoj1669 [Usaco2006 Oct]Hungry Cows饥饿的奶牛

    Description Farmer John养了N(1 <= N <= 5,000)头奶牛,每头牛都有一个不超过32位二进制数的正整数编号.FJ希望奶牛们在进食前,能按编号从小到大的顺序 ...

  6. 洛谷P1868 饥饿的奶牛

    题目描述 有一条奶牛冲出了围栏,来到了一处圣地(对于奶牛来说),上面用牛语写着一段文字. 现用汉语翻译为: 有N个区间,每个区间x,y表示提供的x~y共y-x+1堆优质牧草.你可以选择任意区间但不能有 ...

  7. c语言二分法查找一个数_算法竞赛小专题系列(1):二分法、三分法

    本系列是这本算法教材的扩展资料:<算法竞赛入门到进阶>. 罗勇军.郭卫斌. 清华大学出版社 二分法和三分法是算法竞赛中常见的算法思路,本文介绍了它们的理论背景.模板代码.典型题目. 1. ...

  8. 【动态规划】线性动态规划

    吐槽:动态规划这个东西,只要推不出状态转移方程,一切都白搭 基础知识 一. 动态规划 动态规划中最重要的三个概念:最优子结构,重复子问题,无后效性. 最优子结构:如果问题的最优解所包含的子问题的解也是 ...

  9. 二分法、三分法 --算法竞赛专题解析(1)

    本系列文章将于2021年整理出版,书名<算法竞赛专题解析>. 前驱教材:<算法竞赛入门到进阶> 清华大学出版社 2019.8 网购:京东 当当      作者签名书 如有建议, ...

最新文章

  1. zabbix监控oracle缓冲区,Zabbix监控oracle各服务器连接数
  2. python函数知识点总结_python函数map()和partial()的知识点总结
  3. 一步一步搭建客服系统 (7) 多人共享的电子白板、画板
  4. Redis集群搭建~Redis-x64-3.2.100版本
  5. java分页封装到dao层,Node Dao层的封装与分页
  6. VScode输出中文乱码的解决方法------测试过可以用
  7. hg更新下载指定版本
  8. 谷歌中国算法比赛解题报告 APAC2017C
  9. 工业机器人远程监控系统方案
  10. android 悬浮窗截屏,GitHub - tyhjh/ScreenShot: Android截屏的封装
  11. 计算机换色带技巧,安装与更换针式打印机的色带的详细方法(图文教程)
  12. 【每日新闻】倪光南:“中国芯”切勿重硬轻软;美国研发出可直接在皮肤上打印的3D打印技术...
  13. 2种方法,当文本框输入@自动补全邮箱后缀(特别是命名空间的引用,共三种方法)
  14. slf4j日志门面担当
  15. WKWebView 设置 UserAgent
  16. all boot options are tried的问题解决
  17. 如何在execl表格中打对勾和叉叉?
  18. python能做什么效果_一行 Python 能实现什么丧心病狂的功能?
  19. 富途php面试经验,忍不住想吐槽一下富途二面体验
  20. 谁能治好抖音们的“版权病”?

热门文章

  1. Java模拟浏览器工具HtmlUnit-登陆实践
  2. 用python解释exif数据的GPS信息
  3. 寒假学习HTML记录4
  4. 价值数十万的免费工具包
  5. 10-6 查询选修了所有3学分课程的学生学号
  6. 计算机一级光盘安装图,用光盘装电脑系统的详细步骤
  7. jQuery个人总结
  8. 人工智能: 手把手教你运行机器学习代码(EGNet)
  9. GetPrivateProfileString 中文乱码解决
  10. Mastodon 生产部署指南