做网站需要做h5吗,湖北网站建设优化,广东建设信息网是什么网站,建设学院网站的意义题意#xff1a;有n个带颜色的方块#xff0c;同种颜色的方块连成一个区域#xff0c;每次可以消除一个区域的方块x#xff0c;然后得到分数x2#xff0c;右边的方块左移#xff0c;然后问求最大的分数。 思路#xff1a;区间dp#xff0c;dp#xff08;i#xff0c;…题意有n个带颜色的方块同种颜色的方块连成一个区域每次可以消除一个区域的方块x然后得到分数x2右边的方块左移然后问求最大的分数。 思路区间dpdpijk表示区间ij在右边添上k个颜色与j相同的方块的最优解。对于每个状态如果消去j状态转移到dpip-10j-pk12要不然枚举qp使得a[q]a[j]且a[q]不等于a[q1],转移到dpq1p-10dpiqj-pk1 code #include bits/stdc.h
using namespace std;typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;const int INF0x3fffffff;
const int inf-INF;
const int N1000000;
const int M205;
const int mod1000000007;
const double piacos(-1.0);#define cls(x,c) memset(x,c,sizeof(x))
#define cpy(x,a) memcpy(x,a,sizeof(a))
#define ft(i,s,n) for (int is;in;i)
#define frt(i,s,n) for (int is;in;i--)
#define lson l,m,rt1
#define rson m1,r,rt1|1
#define lrt rt1
#define rrt rt1|1
#define middle int m(rl)1
#define lowbit(x) (x-x)
#define pii pairint,int
#define mk make_pair
#define IN freopen(in.txt,r,stdin);
#define OUT freopen(out.txt,w,stdout);int n,v[M];
int dp[M][M][M];
int sol(int l,int r,int k){if (lr) return 0;int ansdp[l][r][k];if (ans) return ans;anssol(l,r-1,0)(k1)*(k1);frt(i,r-1,l){if (v[i]v[r])ansmax(ans,sol(l,i,k1)sol(i1,r-1,0));}return ans;
}
int main()
{int T;scanf(%d,T);ft(ca,1,T){scanf(%d,n);ft(i,1,n) scanf(%d,v[i]);cls(dp,0);printf(Case %d: %d\n,ca,sol(1,n,0));}
}