为什么我的代码在自己编译器上可以编译成功且可以成功运行,但去蓝桥杯题库里提交答案

学术版

最多就是用到了优先队列,pair这些
by fgcfgc @ 2024-04-10 22:36:12


@[fgcfgc](/user/313161) 不是你好歹贴个代码出来啊 什么都不给怎么调?
by lunjiahao @ 2024-04-11 09:24:29


{ int N,K;cin>>N>>K; for(int i=1;i<=N;i++) { int tem;cin>>tem; que.push(make_pair(tem,i)); last[i]=i-1; next[i]=i+1; } while(que.size()!=N-K) { int data=que.top().first; int xy=que.top().second; que.pop(); if(zen[xy]) { que.push(make_pair(data+zen[xy],xy)); zen[xy]=0; } else { zen[last[xy]]+=data; zen[next[xy]]+=data; next[last[xy]]=next[xy]; last[next[xy]]=last[xy]; } } int min=1000000000; while(!que.empty()) { int xy=que.top().second; a[xy]=que.top().first+zen[xy]; que.pop(); if(xy<min) min=xy; } for(int i=1;i<=N-K;i++) { cout<<a[min]<<' '; min=next[min]; } return 0; }
by fgcfgc @ 2024-04-11 09:42:14


|