BNU 2012 Summer Selection Contest I A题 Fragile Bridges
题意:给定N个点和i-i+1点的边权,没经过一次边,边权减1,ans加1。给定n-1条边的边权,求最大的ans。
思路:dp[i][0]从i点出发到0-i最大ans,dp[i][1]为从i经过0-i回到i的最大ans。dp[i][2]从i点出发到i-n-1最大ans,dp[i][3]为从i经过i-n-1回到i的最大ans。
状态转移方程为dp[i][1]=dp[i-1][1]+a[i-1]/2*2(a[i-1]>1)
dp[i][1]=0(a[i-1]<2)
dp[i][0]=dp[i-1][0]+a[i-1](a[i-1]奇数)
dp[i][0]=max(dp[i][1],dp[i-1][0]+a[i-1]-1)(a[i-1]偶数)
dp[i][2]dp[i][3]同理。
最后遍历i,ans=max(dp[i][0],dp[i][2],dp[i][1]+dp[i][2],dp[i][0]+dp[i][3])。
Q