萌新刚学 OI 0.111415秒,49分求条
查看原帖
萌新刚学 OI 0.111415秒,49分求条
1304256
xy_mc楼主2025/6/21 18:20

rt.

const int INF=0x3f3f3f3f;
const ll LNF=0x3f3f3f3f3f3f3f3f;
const int N=300;

int n;
int a[N];
int f[N][N];
void solve(){
	cin>>n;
	rep(i,1,n) cin>>a[i];
	rep(i,1,n) f[i][i]=a[i];
	rep(l,2,n){
		rep(i,1,n-l+1){
			int j=i+l-1;
			rep(k,i,j-1){
				if(f[i][k]==f[k+1][j]){
					f[i][j]=max(f[i][j],f[i][k]+1);
				}
				f[i][j]=max(f[i][j],max(f[i][k],f[k+1][j]));
			}
		}
	}
	cout<<f[1][n];
}

int main(){
	int t=1;
	while(t--){
		solve();
	}
	return 0;
}

删除部分为又臭又长的没用的东西。

2025/6/21 18:20
加载中...