题意:给出n,l[1],r[1],a,b,c,d 其中 l[i]=l[i-1]*a+b,r[i]=r[i-1]*c+d;

问能否从这n个区间中选出不相交不重叠的三个区间

看的题解

先考虑最左边的区间,找出最小的rmin,即为最左边的区间,这样能够给剩下的两个区间腾出更多的选择空间

再考虑最右边的区间,找出最大的lmax,即为最右边的区间,这样也能够为剩下的一个空间腾出更多的选择空间

如果存在一个区间的l[i]>rmin,r[i]<lmax,那么就是“YES”

如果在这样的条件下都不存在,那就是"NO"

学习的----代码-

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 #include <cmath>
 5 #include<stack>
 6 #include<vector>
 7 #include<map>
 8 #include<set>
 9 #include<queue>
10 #include<algorithm>
11 using namespace std;
12
13
14 typedef long long LL;
15 const int INF = (1<<30)-1;
16 const int mod=4294967296;
17 const int maxn=10000005;
18
19 unsigned int  l[maxn],r[maxn];
20
21 int main(){
22     int T;
23     scanf("%d",&T);
24     while(T--){
25         memset(l,0,sizeof(l));
26         memset(r,0,sizeof(r));
27
28         unsigned int n,a,b,c,d;
29         cin>>n>>l[1]>>r[1]>>a>>b>>c>>d;
30
31         for(int i=2;i<=n;i++) l[i]=l[i-1]*a+b;
32         for(int i=2;i<=n;i++) r[i]=r[i-1]*c+d;
33
34         for(int i=1;i<=n;i++)
35         if(l[i]>r[i]) swap(l[i],r[i]);
36
37         int minn=r[1],maxx=l[1];
38         for(int i=1;i<=n;i++){
39             if(l[i]>maxx) maxx=l[i];
40             if(r[i]<minn) minn=r[i];
41         }
42
43         int flag=0;
44         for(int i=1;i<=n;i++){
45             if(l[i]>minn&&r[i]<maxx){
46                 flag=1;
47                 break;
48             }
49         }
50
51         if(flag) printf("YES\n");
52         else printf("NO\n");
53     }
54     return 0;
55 }

View Code

转载于:https://www.cnblogs.com/wuyuewoniu/p/4474026.html

HDU 5214 Movie【贪心】相关推荐

  1. hdu 5248(二分+贪心)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5248 解题思路:这道题我原本的思路是动态规划,结果看到数很大,结果放弃了.然后想到二分,思路是对的,只 ...

  2. hdu 5246(贪心)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5246 解题思路:先排序,在采用贪心的方法,先给百小度找到合适的初始战斗力,找到比初始战斗力上限小的中最 ...

  3. hdu 4296 Buildings (贪心)

    http://acm.hdu.edu.cn/showproblem.php?pid=4296 题意: 给出n个石板的重量w和它的承受能力s,将这n个石板累在一起,这样每个石板都有一个PDV = (Σw ...

  4. HDU - 6438(贪心+思维)

    链接:HDU - 6438 题意:给出 n ,表示 n 天.给出 n 个数,a[i] 表示第 i 天,物品的价格是多少.每天可以选择买一个物品,或者卖一个已有物品,也可以什么都不做,问最后最大能赚多少 ...

  5. HDU 4023 (博弈 贪心 模拟) Game

    如果硬要说这算是博弈题目的话,那这个博弈是不公平博弈(partizan games),因为双方面对同一个局面做出来的决策是不一样的. 我们平时做的博弈都是公平博弈(impartial games),所 ...

  6. HDU - 6746 Civilization(贪心+模拟)

    题目链接:点击查看 题目大意:中文题面 题目分析:一道比赛时写崩了的模拟,赛后参考别人的代码,发现原来这个题目可以写的如此简单 说会题目,n 只有 500 ,可以 n * n 枚举每个位置作为起点,对 ...

  7. 给我往死里贪!——24行代码AC_今年暑假不AC HDU - 2037(贪心模板讲解)

    励志用少的代码做高效表达 思路分析: 贪心算法模板题 贪心算法简单来讲即自顶向下,求解出每个子最优解,且每个子问题不会对下一个问题产生影响 该题算法模型为: 1.若每次选取开始时间最早的节目,无法求出 ...

  8. HDU 4864 Task(贪心或高斯消元)

    题意:n台机器工作时间为ai,等级bi,m个任务需要时间ai,等级bi,一台机器只能完成一个任务,完成一个任务收益为500*ai+2*bi,求最大收益:(n,m>100000) 思路:先从大到小 ...

  9. HDU 5835 Danganronpa 贪心

    Danganronpa 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5835 Description Chisa Yukizome works as ...

最新文章

  1. 无人驾驶传感器融合技术
  2. 基因课 15天入门生物信息(2021年) 第三天 Linux基础命令(3)
  3. Jdk8集合源码解析---ArrayList
  4. mysql 查询执行计划_mysql8 参考手册--了解查询执行计划,使用EXPLAIN优化查询
  5. EWORD 0513
  6. vmware的win98安装声音驱动
  7. 2018年计算机学校迎新标语,2018学校迎新标语大全.doc
  8. [Objective-C]编程艺术 笔记整理
  9. oracle1461,Oracle 10.2.0.3的ORA-1461错误
  10. Java 头像剪切及上传服务器JSP 笔记
  11. oracle如何获取异常,ORACLE-函数异常处理(EXCEPTION)
  12. 安卓软件改名器_自动点击屏幕的软件有哪些?-手机自动点击软件下载
  13. MySQL中的几类日志文件介绍
  14. 【工具-Hydra】暴力破解神器:Hydra-九头蛇
  15. 天正暖通2013版安装包附带注册机下载
  16. 滴滴涨价背后:市值缩水40亿美元,高峰期无人接单?
  17. 怎样装系统(附图文教程)
  18. [交流] 新手常见(五国)(-v图)错误解决(原版,破解kernel,补丁kext下载)
  19. 修改CPAN配置文件
  20. 如何实现微信小程序的横屏及适配

热门文章

  1. java题目不会做那么解答_有几道JAVA的题目不会做 哪位高手来解答一下!谢
  2. python爬取音乐_利用Python对网易云音乐进行爬取!无所不爬的爬虫啊!
  3. 开发运维效率提升 80%,计算成本下降 50%,分众传媒的 Serverless 实践
  4. LifseaOS 悄然来袭,一款为云原生而生的 OS
  5. 如何通过 Serverless 轻松识别验证码?
  6. 课时 17-深入理解 etcd:etcd 性能优化实践(陈星宇)
  7. linux下中文的wchar转char,Linux 下char转换为wchar_t
  8. python装饰器是什么意思_这个python 装饰器代码是什么意思?
  9. element 表格宽度自适应_Python如何以表格形式打印输出!
  10. tomcat安装_基于CentOS 一键安装tomcat脚本