FZU 1914 单调队列】的更多相关文章

题目链接:http://acm.fzu.edu.cn/problem.php?pid=1914 题意: 给出一个数列,如果它的前i(1<=i<=n)项和都是正的,那么这个数列是正的,问这个数列的这n种变换里, A(0): a1,a2,-,an-1,an A(1): a2,a3,-,an,a1 - A(n-2): an-1,an,-,an-3,an-2 A(n-1): an,a1,-,an-2,an-1 问有多少个变换里,所以前缀和都是正整数. 思路:因为变换是a[n]后面接着a[1]所以我们把…
/****************************************************************** 题目: 志愿者选拔(FZU 1894) 算法: 单调队列 算法思想: 在每个元素入队的时候入队的时候,使队列单调,查找 的时候就能很快找到最值. *******************************************************************/ #include<cstdio> #include<cstring>…
传送门 Description 世博会马上就要开幕了,福州大学组织了一次志愿者选拔活动.参加志愿者选拔的同学们排队接受面试官们的面试.参加面试的同学们按照先来先面试并且先结束的原则接受面试官们的考查.面试中每个人的人品是主要考查对象之一.(提高人品的方法有扶老奶奶过街,不闯红灯等)作为主面试官的John想知道当前正在接受面试的同学队伍中人品值最高的是多少.于是他请你帮忙编写一个程序来计算. Input 输入数据第一行为一整数T,表示有T组输入数据.每组数据第一行为”START”,表示面试开始接下…
题目链接: 题目 I. Approximating a Constant Range time limit per test:2 seconds memory limit per test:256 megabytes 问题描述 When Xellos was doing a practice course in university, he once had to measure the intensity of an effect that slowly approached equilibr…
训练赛的题…… 暴力一波明显超时…… 最近刚学stl 感觉是优先队列 但还是太会用…… 以后可以试一下优先队列…… 比赛之后百度了一下 发现是单调队列…… 看起来挺简单的 也算个模版题吧…… 总之思路就是维护一个单调队列…… 有用的的只有C G Q…… 那个长度最多是5的名字只用接着 根本没用…… 直接上代码…… #include<stdio.h> #include<iostream> #include<string.h> #include<algorithm&g…
 Problem 1894 志愿者选拔 Accept: 1770    Submit: 5523 Time Limit: 1500 mSec    Memory Limit : 32768 KB  Problem Description 世博会立即就要开幕了,福州大学组织了一次志愿者选拔活动.參加志愿者选拔的同学们排队接受面试官们的面试.參加面试的同学们依照先来先面试而且先结束的原则接受面试官们的考查.面试中每一个人的人品是主要考查对象之中的一个.(提高人品的方法有扶老奶奶过街,不闯红灯等)作为…
首先得讲一下单调队列,顾名思义,单调队列就是队列中的每个元素具有单调性,如果是单调递增队列,那么每个元素都是单调递增的,反正,亦然. 那么如何对单调队列进行操作呢? 是这样的:对于单调队列而言,队首和队尾都可以进行出队操作,但只有队尾能够进行入队操作. 至于如何来维护单调队列,这里以单调递增队列为例: 1.如果队列的长度是一定的,首先判断队首元素是否在规定范围内,如果不再,则队首指针向后移动.(至于如何来判断是否在制定范围内,一般而言,我们可以给每个元素设定一个入队的序号,这样就能够知道每个元素…
S - 1019 Time Limit:1500MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status Practice FZU 1894 Description 世博会马上就要开幕了,福州大学组织了一次志愿者选拔活动. 参加志愿者选拔的同学们排队接受面试官们的面试.参加面试的同学们按照先来先面试并且先结束的原则接受面试官们的考查. 面试中每个人的人品是主要考查对象之一.(提高人品的方法有扶老奶奶过街…
题目链接:http://poj.org/problem?id=2823 用RMQ超时了,我想应该是不会的,看discuss说,之前RMQ过了. 维护两个单调队列. 单调递减的队列,每插入一个时: 超过单调队列长度,左移头指针. 第一个或者符合条件,直接加到后面. 否则,一直退: #include <cstdio> #include <iostream> #include <algorithm> #include <cstring> using namespa…
题目连接: http://acm.fzu.edu.cn/problem.php?pid=1894 解题思路: 因为出队和入队都满足队列的性质,优先单调队列的优先级有进入队列的顺序和人品的高低,在一段区间中如果出现x[i]是最大的,那么[0,i-1]区间内的数就不用记录了,所以单调队列里面可以按照人品值降序排列,输出的时候判断一下当前元素是否已经出队即可. #include <cstdio> #include <cstring> using namespace std; ; stru…