大家帮我看看代码,这代码在自己编译器上可以运行,但在蓝桥杯题库
  • 板块学术版
  • 楼主fgcfgc
  • 当前回复6
  • 已保存回复6
  • 发布时间2024/4/11 09:55
  • 上次更新2024/4/11 16:12:31
查看原帖
大家帮我看看代码,这代码在自己编译器上可以运行,但在蓝桥杯题库
313161
fgcfgc楼主2024/4/11 09:55

大家帮我看看代码,这代码在自己编译器上可以运行,但在蓝桥杯题库里提交就提示无法编译了。

{

priority_queue<pair<int,int>,vector<pair<int,int> >,greater<pair<int,int> > >que;
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;

}

2024/4/11 09:55
加载中...