队列
查看原帖
队列
866783
1q2zb楼主2023/8/28 10:21
#include <bits/stdc++.h>

using namespace std;

struct node{long long beg,end,num,maxn;};

int main(){
    long long c,q,sum=0;
    cin>>c>>q;
    vector<node>a;
    
    for(long long i=1;i<=q;i++){
        long long tmp;cin>>tmp;
        if(tmp==1){
            cin>>tmp;
            node tmpn;
            tmpn.beg=1,tmpn.end=tmp;
            tmpn.num=tmp;
            tmpn.maxn=tmp;
            a.push_back(tmpn);
        }else if(tmp==2){
            cin>>tmp;
            while(tmp){
                if(tmp>=a[0].num){
                    tmp-=a[0].num;
                    a.erase(a.begin());
                }
                else{
                    a[0].beg+=tmp;
                    a[0].num-=tmp;
                    tmp=0;
                }
            }
        }else if(tmp==3){
            cin>>tmp;
            int ind=0;
            while(tmp-a[ind].num>0&&tmp>=0){
                //cout<<ind<<" "<<tmp<<" "<<a[ind].num<<endl;
                tmp-=a[ind].num;
                ind++;
            }
            cout<<tmp+a[ind].beg-1<<endl;
        }else{
            long long maxn=0;
            for(auto i:a){
                maxn=max(maxn,i.maxn);
            }
            cout<<maxn<<endl;
        }
        //for(auto i:a){cout<<i.beg<<" "<<i.end<<" "<<i.maxn<<" "<<i.num<<endl;}cout<<endl;
    }
}

on Line 38

while(tmp-a[ind].num>0&&tmp>=0){

I change it to

while(tmp-a[ind].num>=0&&tmp>=0){

and I got WA*4

so Why?

顺便修一下我的TLE(bushi

tku

2023/8/28 10:21
加载中...