社区讨论

TLE

B3951[GESP样题 五级] 小杨的队列参与者 2已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@mlw4ehui
此快照首次捕获于
2026/02/21 17:32
2 周前
此快照最后确认于
2026/02/23 22:25
2 周前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
int st(int x);
int a[123456],len[123456];
int n,m,x,k_len=0;
int main(){
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>a[i];
	}
	cin>>m;
	for(int i=1;i<=m;i++){
		cin>>x;
		cout<<st(x)<<"\n";
	}
}
int st(int x){
	k_len++;
	len[k_len] = x;
	int sum = 0;
	// 选择排序
	for(int i=1;i<=k_len;i++){
	    int minn=i;
	    for(int j=i+1;j<=k_len;j++){
	        if(a[len[j]]<a[len[minn]]){
	            minn=j;
	        }
	    }
	    if(minn!=i) {
	        swap(len[i],len[minn]);
	        sum++;
	    }
	}
	return sum;
}
TLE求解

回复

1 条回复,欢迎继续交流。

正在加载回复...