当前位置: 首页 > wzjs >正文

酷虎云建站关键词搜索方法

酷虎云建站,关键词搜索方法,前端开发可以做网站赚钱吗,怎么做无损mp3下载网站点我写题 思路:区间dp和缝合dp板子题,先用个dp[i][j][k]表示考虑区间[i,j]合并成颜色k的最小代价,然后用min[i][j]存一下[i,j]区间合并的最小代价,即min(dp[i][j][0-2]),has[i][j]表示区间[i,j]是否能合并&#xff0c…

 点我写题

思路:区间dp和缝合dp板子题,先用个dp[i][j][k]表示考虑区间[i,j]合并成颜色k的最小代价,然后用min[i][j]存一下[i,j]区间合并的最小代价,即min(dp[i][j][0-2]),has[i][j]表示区间[i,j]是否能合并,上面提到的部分都能用区间dp处理出来,接下来就是求具体答案的dp,缝合板子,用个ds[i]表示前i个数最少能分成几段,转移很显然,枚举前面的j,然后判断[i,j]这一段是不是能合并,然后ds[i]=min(ds[i],ds[j-1]+1),这样答案的前一部分就求好了,然后考虑ak[i][k],即前i个数分成k段的最小代价,也就是答案的第二部分,也是缝合板子题,先判断前面的j是否能成为一段然后取min转移即可,具体看代码

内心ps:蓝桥云课的代码区挺难用的,哎,这题挺板的思路很明显,写了20min就过了。。

import java.io.*;
import java.util.*;
public class Main{public static void main(String args[]){Scanner s=new Scanner(System.in);int n=s.nextInt();long dp[][][]=new long [n+10][n+10][3];long min[][]=new long [n+10][n+10];int dj[]=new int [n+10],col[]=new int [n+10];int sum[]=new int [n+10];for(int i=1;i<=n;i++){dj[i]=s.nextInt();sum[i]=sum[i-1]+dj[i];}for(int i=1;i<=n;i++) col[i]=s.nextInt();for(int i=0;i<n+10;i++){Arrays.fill(min[i],(long)1e18);for(int j=0;j<n+10;j++){Arrays.fill(dp[i][j],(long)1e18);}}for(int i=1;i<=n;i++){dp[i][i][col[i]]=0;min[i][i]=0;}boolean has[][]=new boolean [n+10][n+10];for(int i=1;i<=n;i++) has[i][i]=true;for(int len=2;len<=n;len++){for(int i=1;i+len-1<=n;i++){int j=i+len-1;for(int k=i;k<j;k++){for(int u=0;u<3;u++){int ne=(u+1)%3;dp[i][j][ne]=Math.min(dp[i][j][ne],dp[i][k][u]+dp[k+1][j][u]+sum[j]-sum[i-1]);if(dp[i][j][ne]<(long)1e18){//   System.out.println(i+" "+j+" "+ne);has[i][j]=true;min[i][j]=Math.min(min[i][j],dp[i][j][ne]);}}}}}int ds[]=new int [n+10];//   ds[1]=1;for(int i=1;i<=n;i++){ds[i]=i;for(int j=1;j<=i;j++){if(has[j][i]){//    System.out.println(j+" "+i);ds[i]=Math.min(ds[i],ds[j-1]+1);//  break;}}}long ak[][]=new long [n+10][ds[n]+10];for(int i=0;i<n+10;i++) Arrays.fill(ak[i],(long)1e18);ak[0][0]=0;//考虑前i个数分成p段的最小代价// System.out.println("fdsaf");for(int i=1;i<=n;i++){for(int j=1;j<=i;j++){if(has[j][i]==false) continue;for(int p=1;p<=Math.min(ds[n],i);p++){ak[i][p]=Math.min(ak[i][p],ak[j-1][p-1]+min[j][i]);}}}//  System.out.println(ds[n]);System.out.println(ds[n]+" "+ak[n][ds[n]]);}
}
// 1 2 2
// 4 5 0
// 3 5 1
// 3 5 1
// 2 5 2
// 2 5 2
// 2 5 2
// 0

http://www.dtcms.com/wzjs/299333.html

相关文章:

  • 哪个网站做自行车评测的宁波seo公司推荐
  • 正规的饰品行业网站开发开封seo推广
  • 影楼修图用什么软件广州网站营销seo
  • 京山网站开发百度站长平台
  • 网站空间 按流量计费网络媒体有哪些
  • 软件公司市值排名成都sem优化
  • 北京网站设计有名 乐云践新注册推广赚钱一个80元
  • 做自己的网站要多少钱网络推广员要怎么做
  • 网站建设文化报价高端网站建设
  • 昭通高速装配式建筑公司网站织梦seo排名优化教程
  • 网站建设套餐有哪些帮收款的接单平台
  • 网站建设视频教程下载seo优化师是什么
  • 网站设计与制作简单吗seo工具包
  • 做网站需要的技术不受国内限制的浏览器下载
  • 河南那家公司做家具行业网站好新媒体营销策略有哪些
  • 在网站建设工作会议上的讲话青岛爱城市网app官方网站
  • 自己做网站帮公司出认证证书违法吗宁波网站seo哪家好
  • 嘉兴制作网站企业全国疫情高峰感染进度查询
  • 建网站的公司重庆网站排名提升
  • 推广方案模板网站seo策划方案案例分析
  • 做卖衣服网站源代码seo推广是什么意思呢
  • 汉力建设网站网站接广告
  • 视频付费网站建设seo网站建设公司
  • 学校网站设计理念网站降权查询工具
  • 减肥网站如何做google关键词分析工具
  • 传媒网站后台免费模板品牌营销策划怎么写
  • 广州做英文网站的公司公司网页制作
  • 网站开发用的是什么语言大数据营销 全网推广
  • 手表网站背景如何做营销策划方案
  • 如何在网站建设远程教育厦门人才网最新招聘信息网