80分TLE
查看原帖
80分TLE
1040386
chenyiran2012楼主2025/2/8 08:29
#include <bits/stdc++.h>
using namespace std;
long long s[50010][5];
long long gh[50010];
long long pd(long long x){
	if(gh[x]){
		if((x-gh[x])%2==0){
			return 0;
		}
	}
	return 1;
}
int main(){
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	long long n;
	cin >> n;
	long long a,b;
	cin >> a;
	long long len=1;
	s[1][1]=1;
	s[1][0]=1;
	for(int i=2;i<=n;i++){
		cin >> b;
		if(b==a){
			s[len][0]++;
		}
		else{
			len++;
			s[len][0]++;
			s[len][1]=i;
		}
		a=b;
	}
	long long k=n,l=1;
	while(k!=0){
		for(int i=1;i<=len;i++){
			if(s[i][0]){
				gh[i+1]=i;
			}
			else{
				gh[i+1]=gh[i];
			}
		}
		for(int i=1;i<=len;i++){
			if(s[i][0] && pd(i)){
				s[i][0]--;
				k--;
				cout << s[i][1] << " ";
				s[i][1]++;
			}
		}
		cout << endl;
		l++;
	}
	return 0;
}
2025/2/8 08:29
加载中...