【题意】
给你一个长为n的数组a
让你对于每个长度为m的窗口。
算出其中的最大值以及从左往右遍历的时候这个最大值更新的次数。
【题解】
单调队列。
从后往前滑动窗口。
会发现我们维护以这个窗口里面的值为元素的单调队列的时候。
这个单调队列的长度就是最大值更新的次数。
因为我们把a[i]加入队列的时候。
队列尾巴上,小于等于这个a[i]的元素都会被删掉.
每个都这么做的话。
队列里面的元素就和更新时候的元素对应。
最大值就是队列的头部。


#include<bits/stdc++.h>
#define ll long long
#define inf 0x3f3f3f3f
#define pii pair<ll,ll>
using namespace std;
const int maxn=10000005;
ll nex[maxn],a[maxn],qq[maxn],t;
ll p,q,r,mo,ans,cnt,j,ctt,n,m,k,i,ma,ct,kk;
int main()
{ll T;scanf("%lld",&T);while(T--){i=1;scanf("%lld%lld%lld%lld%lld%lld%lld",&n,&m,&k,&p,&q,&r,&mo);while(i<=n){if(i<=k) scanf("%lld",&a[i]);else a[i]=(p*a[i-1]+q*i+r)%mo;i++;}ans=cnt=0;for(ll h=1,t=0,i=n;i;i--){while(h<=t&&a[qq[t]]<=a[i]) t--;qq[++t]=i;if(i<=n-m+1){while(qq[h]>=i+m) h++;ans+=(i^a[qq[h]]);cnt+=(i^(t-h+1));}}printf("%lld %lld\n",ans,cnt);}return 0;
}

转载于:https://www.cnblogs.com/ffgcc/p/10546365.html

杭电多校第三次 Problem A. Ascending Rating(单调队列)相关推荐

  1. 2017 杭电多校联赛第二场 1003 Maximum Sequence(单调队列)HDU 6047

    Maximum Sequence Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  2. 2022杭电多校(三)

    2022杭电多校(三) 文章目录 2022杭电多校(三) 一.比赛小结 二.题目分析及解法(基础题) 1001.Equipment Upgrade 1002.Boss Rush 1003.Cyber ...

  3. 2019.7.29 杭电多校第三场小结

    index > 杭电多校第三场 题号 标题 AC 做法 状态 6603 Azshara's deep sea (51/150)34.00% 6604 Blow up the city (213/ ...

  4. 2019杭电多校第三场 6608 Fansblog(威尔逊定理+miller_rabin素性测试)

    Problem Description 传送门 Farmer John keeps a website called 'FansBlog' .Everyday , there are many peo ...

  5. 杭电多校第三场-H-Game

    题目描述 Again Alice and Bob is playing a game with stones. There are N piles of stones labelled from 1 ...

  6. 杭电多校(三)2019.7.29--暑假集训

    [HDU 6003] UNSOLVED [HDU 6004] SOLVED [题目大意]有一DAG图,n个节点,m次询问,每次询问两个节点,求令两个节点任意一个和叶节点失去联通的方法数 [思路]支配树 ...

  7. 2022杭电多校(十)

    2022杭电多校(十) 文章目录 2022杭电多校(十) 一.比赛小结 二.题目分析及解法(基础题) 1001.Winner Prediction 1003.Wavy Tree 1004.Averag ...

  8. 2022杭电多校(九)

    2022杭电多校(九) 文章目录 2022杭电多校(九) 一.比赛小结 二.题目分析及解法(基础题) 1001.Arithmetic Subsequence 1003.Fast Bubble Sort ...

  9. 2022杭电多校(二)

    2022杭电多校(二) 文章目录 2022杭电多校(二) 一.比赛小结 二.题目分析及解法(基础题) 1001.Static Query on Tree 1002.C++ to Python 1003 ...

  10. 2022杭电多校(四)

    2022杭电多校(四) 文章目录 2022杭电多校(四) 一.比赛小结 二.题目分析及解法(基础题) 1001.Link with Bracket Sequence II 1002.Link with ...

最新文章

  1. G1回收器:我怎么知道你是什么时候的垃圾?
  2. Javascript 严格模式详解
  3. Python 的闭包和装饰器
  4. java中queue排序_Java中常见的排序算法有哪些?---选择排序
  5. Altium Designer -- 查看板子厚度
  6. SpringBoot集成多数据源
  7. ASRT:一个中文语音识别系统
  8. Apache Kafka简介与安装(一)
  9. Canal部署linux mysql同步数据
  10. 【论文笔记】MOBA类游戏中的强化学习论文5篇
  11. 学生健康管理软件/中小学体检数据管理系统
  12. Nginx网络压缩 CSS压缩 图片压缩 JSON压缩
  13. 如何去掉图片上的文字?
  14. matlab里用多边形裁剪图片,多边形裁剪图片与自定义 Gizmo Cocos Creator
  15. 解读联想重组:终于裁员了
  16. 以什么样的模式和方式来解决问题或创造价值?
  17. [老文档2016]一种后台管理智能杀进程的规则与方法
  18. Java中BIO,NIO,AIO
  19. 与或非门——python逻辑电路
  20. 第四篇:coalesce 和repartition 在shuffle 和并行度之间的选择(spark2.3持续更新中...........)

热门文章

  1. eclipse中出现代码覆盖的颜色信息,如何去掉
  2. VS编译NPAPI:jref类型出错
  3. 想起“不能什么都是你来干”
  4. 假疫苗事件,错在企业,责任在管理部门
  5. /usr/bin/env: escript: No such file or directory的解决办法
  6. Unknown run configuration type AndroidRunConfigurationType的解决办法
  7. 解决Android Studio不停的Indexing的问题
  8. 分析sql字段_全面解析一条SQL语句执行得很慢的原因有哪些
  9. WebGL入门教程一:基本概念和使用说明
  10. pycharm2017自建注册服务器