大佬教程收集整理的这篇文章主要介绍了2021蓝桥杯----最小权值(区间dp解法),大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
直接暴力区间dp,可以出来结果只是时间需要长点,需要16秒
结果:2653631372
#include<iostream> #include<cstring> using namespace std; typedef long long ll; ll f[2022][2022]; int main(void) { memset(f,0x3f3f3f3f,sizeof f); for(int len = 1;len<=2021;len++) { for(int l = 1;l+len-1<=2021;l++) { int r = l+len-1; if(len == 1)f[l][r] = 1; else { for(int k = l;k<=r;k++) { ll left = k == l?0:f[l][k-1]; ll right = k==r?0:f[k+1][r]; f[l][r] = min(f[l][r],1+2*left+3*right+(k-l)*(k-l)*(r-k)); //cout << "f("<<l<<" "<<r<<" ):"<<f[l][r]<<endl; } } } } cout << f[1][2021]; }
以上是大佬教程为你收集整理的2021蓝桥杯----最小权值(区间dp解法)全部内容,希望文章能够帮你解决2021蓝桥杯----最小权值(区间dp解法)所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。