贪心做法求hack
查看原帖
贪心做法求hack
500031
FJ_OIer楼主2024/8/28 20:54
#include <bits/stdc++.h>
using namespace std;
string s;
int e,cnt;
int pl[256],pr[256];
int main(){
	cin>>s;
	e=s.size()-1;
	for (int l=0,r=e;l<r;){
		if (s[l]==s[r]){
			l++,r--;
			continue;
		}
		for (int i=l;i<=r;i++){
			pl[s[i]]=i;
		}
		for (int i=r;i>=l;i--){
			pr[s[i]]=i;
		}
		int p=pl[s[l]],q=pr[s[r]];
		if (r-p<=q-l){
			cnt+=r-p;
			r-=r-p;
		}else{
			cnt+=q-l;
			l+=q-l;
		}
	}
	cout<<cnt;
	return 0;
}
2024/8/28 20:54
加载中...