社区讨论

72分,超时了,不知道怎么优化了,求助

P7910[CSP-J 2021] 插入排序参与者 6已保存回复 12

讨论操作

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

当前回复
12 条
当前快照
1 份
快照标识符
@lobgdjvs
此快照首次捕获于
2023/10/29 20:34
2 年前
此快照最后确认于
2023/11/04 01:59
2 年前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;

const int N = 10010;

typedef long long LL;

int h[N],a[N];
int n,q,res;
struct 	Node 
{
	int num,indx;
	bool st;	
}node[N],num[N];

bool cmp(Node A,Node B)
{
	return A.num < B.num;
}

int bsort(Node node[],int ans)
{
	Node arr[N];
	for(int i =1;i<=n;i++)arr[i] = node[i];
	
	stable_sort(arr + 1,arr + n + 1,cmp);
	
	for(int i = 1;i<=n;i++)
		if(arr[i].st)return i;
}

int main()
{
	
	cin>>n>>q;
	
	for(int i =1;i<=n;i++)
	{
		int x;
		scanf("%d",&x);
		node[i] = {x,i,false};
	}
	while(q--)
	{
		int op,x,v;
		scanf("%d",&op);
		if(op == 1) 
		{
			scanf("%d%d",&x,&v);
			node[x].num = v;
		}
		else 
		{
			int t[N];
			scanf("%d",&x);
			int ans = node[x].num;
			node[x].st = true;
			
			int c = bsort(node,ans);
			
			node[x].st = false;
			
			printf("%d\n",c);
		}
		
	} 
	return 0;
	
} 

回复

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

正在加载回复...