问(玄关)
  • 板块灌水区
  • 楼主woshizuoxia
  • 当前回复4
  • 已保存回复5
  • 发布时间2024/5/10 19:28
  • 上次更新2024/5/10 21:15:26
查看原帖
问(玄关)
1105015
woshizuoxia楼主2024/5/10 19:28

有没有大佬能给我解释一下这段代码啥意思


#include<bits/stdc++.h>
using namespace std;
int n,a[100010],a2[100010],m[100100],b[100010],len; 
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i];
		m[a[i]]=i;
	}
	for(int i=1;i<=n;i++)cin>>a2[i];
	for(int i=1;i<=n;i++){
		if(m[a2[i]]>b[len]){
			b[++len]=m[a2[i]];
			continue;
		}
	int k=lower_bound(b+1,b+len+1,m[a2[i]])-b;
	b[k]=m[a2[i]];
	}
	cout<<len;
	return 0;
}
2024/5/10 19:28
加载中...