洛谷p1198 最大数

Posted 狡啮之仰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了洛谷p1198 最大数相关的知识,希望对你有一定的参考价值。

#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
int m,d,head,tail,pos;
char op[2];
typedef long long ll;
int q[200007],a[200007];
int main(){
    while(~scanf("%d%d",&m,&d)){
        int t=0,x;head=tail=0;
        while(m--){
            scanf("%s%d",op,&x);
            if(op[0]==A){
                x=(x+t)%d;
                a[pos++]=x;
                if(tail==0){
                    q[tail++]=pos-1;
                }
                else{
                    while(tail&&a[q[tail-1]]<=x) tail--;//err
                    q[tail++]=pos-1;  
                }
            }
            else{
                int index=lower_bound(q,q+tail,pos-x+1-1)-q;
                t=a[q[index]];//err
                printf("%d\n",a[q[index]]);
            }
        }
    }
    return 0;
}

 

以上是关于洛谷p1198 最大数的主要内容,如果未能解决你的问题,请参考以下文章

洛谷P1198 [JSOI2008]最大数

洛谷P1198最大数

洛谷 P1198 [JSOI2008]最大数

洛谷P1198 [JSOI2008]最大数

洛谷 P1198 [JSOI2008]最大数

BZOJ——1012: [JSOI2008]最大数maxnumber || 洛谷—— P1198 [JSOI2008]最大数