题目大意:

给定n m k,p q r mod,

给出序列的前k项 之后的按公式 a[i]=(p×a[i-1]+q×i+r)%mod 递推

求序列中每个长度为m的连续区间的

该区间最大值与第一位的位置异或 的总和

该区间的最长上升子序列长度与第一位的位置异或 的总和

区间最大值。。可参考另篇单调队列题解滑动最小值

从后向前维护单调队列的话

对于第i个位置为第一位的对应区间来说

单调队列中的最大值为区间最大值

单调队列的长度就是从区间最大值到a[i]的最长下降子序列长度

(反过来即从a[i]到区间最大值的最长上升子序列长度)

#include <bits/stdc++.h>
#define LL long long
using namespace std;
const int N=1e7+;
int n,m,k,p,q,r,mod,a[N],que[N];
int main()
{
int t; scanf("%d",&t);
while(t--) {
scanf("%d%d%d%d%d%d%d",&n,&m,&k,&p,&q,&r,&mod);
for(int i=;i<=n;i++) {
if(i>k)
a[i]=(((LL)p*a[i-])%mod+(LL)q*i%mod+(LL)r)%mod;
else scanf("%d",&a[i]);
}
LL MAX=, CNT=;
int L=, R=;
for(int i=n;i>;i--) {
while(L<R && a[que[R-]]<=a[i]) R--;
que[R++]=i; if(i+m-<=n) {
while(que[L]>i+m- && L<R) L++;
MAX+=(i^a[que[L]]);
CNT+=(i^(R-L));
}
} printf("%lld %lld\n",MAX,CNT);
} return ;
}

hdu6319 Ascending Rating /// 单调队列的更多相关文章

  1. HDU 6319 Ascending Rating (单调双端队列)

    题意:给定一个序列a[1..n],对于每个长度为m的连续子区间,求出区间的最大值和从左往右扫描该区间最大值的变化次数. 分析:先O(n)处理出整个序列的值.求出每个长度为m的连续区间中的最大值可以用单 ...

  2. HDU 2018 Multi-University Training Contest 3 Problem A. Ascending Rating 【单调队列优化】

    任意门:http://acm.hdu.edu.cn/showproblem.php?pid=6319 Problem A. Ascending Rating Time Limit: 10000/500 ...

  3. Ascending Rating(单调队列)

    题目描述 Before the start of contest, there are n ICPC contestants waiting in a long queue. They are lab ...

  4. HDU 6319 Problem A. Ascending Rating(单调队列)

    要求一个区间内的最大值和每次数过去最大值更新的次数,然后求每次的这个值异或 i 的总和. 这个序列一共有n个数,前k个直接给出来,从k+1到n个数用公式计算出来. 因为要最大值,所以就要用到单调队列, ...

  5. 2018年多校第三场第一题 A. Ascending Rating hdu6319

    比赛地址:http://acm.hdu.edu.cn/contests/contest_show.php?cid=804 题目编号:第一题 A. Ascending Rating  hdu6319 题 ...

  6. hdu多校第3场A.Ascending Rating

    Problem A. Ascending Rating Time Limit: / MS (Java/Others) Memory Limit: / K (Java/Others) Total Sub ...

  7. BestCoder Round #89 B题---Fxx and game(单调队列)

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=5945     问题描述 输入描述 输出描述 输入样例 输出样例 题意:中文题,不再赘述: 思路:  B ...

  8. 单调队列 && 斜率优化dp 专题

    首先得讲一下单调队列,顾名思义,单调队列就是队列中的每个元素具有单调性,如果是单调递增队列,那么每个元素都是单调递增的,反正,亦然. 那么如何对单调队列进行操作呢? 是这样的:对于单调队列而言,队首和 ...

  9. FZU 1914 单调队列

    题目链接:http://acm.fzu.edu.cn/problem.php?pid=1914 题意: 给出一个数列,如果它的前i(1<=i<=n)项和都是正的,那么这个数列是正的,问这个 ...

随机推荐

  1. mysql 内连接和外连接查询

    一.内连接查询 (笛卡儿积) 内联接查询inner join,mysql可以简写为join 二.外连接查询 左外联接查询left outer join,mysql可以简写为left join右外联接查 ...

  2. 转 MySQL数据库面试问题集锦

    如何设计一个高并发的系统 ① 数据库的优化,包括合理的事务隔离级别.SQL语句优化.索引的优化 ② 使用缓存,尽量减少数据库 IO ③ 分布式数据库.分布式缓存 ④ 服务器的负载均衡 锁的优化策略 ① ...

  3. 11-vim-撤销和删除命令-01-撤销

    撤销和恢复撤销 命令 英文 功能 u undo 撤销上一次命令 ctrl  u redo 恢复撤销的命令

  4. Codeforces 490D Chocolate

    D. Chocolate time limit per test 1 second memory limit per test 256 megabytes input standard input o ...

  5. bootstrap学习(三)表单

    基本实例: from-group:可以是其内的标签排列更好 from-control:使标签宽度为100% <form> <div class="form-group&qu ...

  6. H5 IOS 虚拟键盘不回落的问题

    在 H5 页面中,会发现在高版本的 IOS 系统中(ios12以上)和微信版本6.7.x以上,都会发现 input 等输入框,输入内容之后发现虚拟键盘消失,但是页面出现大面积白框. 解决办法(最后加上 ...

  7. javafx实现读者文摘上的文章预览及下载

    功能设计: 1.实现读者文章的预览及下载 (实现了单击预览,双击下载) 2.实现文章查找 (实现了通过文章名查找(关键字)或者文章期数或年份(或者年份加期数)) 实现步骤: 首先是数据库设计: 数据库 ...

  8. OpenCV学习笔记 笔记汇总

    转载来源:https://www.cnblogs.com/tonyc/p/6407318.html 今后开始学习OpenCV   1:OpenCV学习笔记 作者:CSDN数量:55篇博文网址:http ...

  9. Shell内置命令——declare

  10. 记录ajax前后交互

    前台请求 $.ajax({ url : '/turn', type : "post", data : { "userName":userName, " ...