AC

草稿涂满荒唐画,摸鱼容易上课难  •  4个月前


#include<bits/stdc++.h>
using namespace std;
int n;
int a[205];
int dp[205][205];
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		int x;
		cin>>x;
		if(x%2==1)a[i]=a[n+i]=1;
	}
	for(int len=1;len<=n-1;len++){
		for(int l=1;l+len-1<=2*n;l++){
			int r=l+len-1;
			dp[l][r]=max(a[l]-dp[l+1][r],a[r]-dp[l][r-1]);
		}
	}
	int ans=0;
	for(int i=1;i<=n;i++)if(a[i]-dp[i+1][i+n-1]>0) ans++;
	cout<<ans<<endl;
	return 0;
}


评论:

请先登录,才能进行评论