据说这题正解队列
查看原帖
据说这题正解队列
1252442
lucy2012楼主2024/8/31 13:22

所以如何优化不会T:

#include<bits/stdc++.h>
using namespace std;
int n;
struct node{
	int num,z;
}; 
queue<node> q;
node now,last;
int main(){   
    scanf("%d",&n);
    for(int i=1;i<=n;i++){
    	int x;
    	scanf("%d",&x);
    	node nod;
    	nod.num=i;
    	nod.z=x;
    	q.push(nod);
	}
	last=q.front();
	q.pop();
	cout<<last.num<<" ";
	while(!q.empty()){
		int tmp=0;
		now=q.front();
		q.pop();
		if(now.num<=last.num){
			printf("\n");
			printf("%d ",now.num);
			tmp=1;
		}
		if(now.z==last.z&&tmp!=1)
		    q.push(now);
		else if(tmp!=1)
		    printf("%d ",now.num);
		last=now;
	}
	return 0;
}
2024/8/31 13:22
加载中...