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

手工制作方法seo新站如何快速排名

手工制作方法,seo新站如何快速排名,广告公司电话,wordpress 添加php文件看见图就想用图去做 但是发现答案用的dp数组做: 20分:简单dp 因为只需要考虑是否超过节点个数l 1.我们定义dp[i][j]为 到达第i个节点经过j条边的最大长度 2.dp[v][j]max(dp[v][j],dp[u][j-1]w) 3.初始化 求最长肯定要初始化为INT_MIN 4.遍历顺序&a…

看见图就想用图去做

但是发现答案用的dp数组做:
20分:简单dp

因为只需要考虑是否超过节点个数l

1.我们定义dp[i][j]为 到达第i个节点经过j条边的最大长度

2.dp[v][j]=max(dp[v][j],dp[u][j-1]+w)

3.初始化 求最长肯定要初始化为INT_MIN

4.遍历顺序:先遍历每个结点u  再遍历对应的v

对每个v去进行1-l条边的遍历 得到经过j条的最大长度

50分:状态压缩dp

100分:看不懂

超时20分代码:

#include<bits/stdc++.h>
using namespace std;
int N, M, L, K;
struct Edge {int to, length;Edge(int to, int length) :to(to), length(length) {}
};
vector<int> color;//颜色标签
vector<vector<Edge>> graph;//邻接表
//vector<int> path;
int max_length = 0;//最大长度
//i:当前遍历节点
//colors:目前找到的颜色集合
//num:结点个数
void dfs(int i,set<int> colors,int num,int now_length) {if (num > L) {return;}else {//说明找到了if (i == N - 1) {/*for (int i = 0; i < path.size(); i++)cout << path[i] << " ";cout << endl;*/max_length = max(max_length, now_length);return;}//没找到继续遍历else {for (Edge e : graph[i]) {int to = e.to;int length = e.length;int col = color[to];//说明当前颜色不存在if (colors.find(col) == colors.end()) {//path.push_back(to);colors.insert(col);dfs(to, colors, num + 1, now_length + length);colors.erase(col);//path.pop_back();}}}}}
//找到最长观光路线:
//颜色各不相同 结点数小于等于L
//越长越好
void solve() {set<int> c;c.insert(color[0]);dfs(0, c, 1, 0);cout << max_length;
}
int main() {//N:结点个数(0~N-1)//M:边的个数//L:理想观光路线节点上限//K:颜色种类(0~K-1)cin >> N >> M >> L >> K;cin.ignore();color.resize(N);for (int i = 0; i < N; i++) {cin>>color[i];}//重置图的大小graph.resize(N);vector<int> U(M), V(M), D(M);for (int i = 0; i < M; i++) {cin>>U[i];}for (int i = 0; i < M; i++) {cin >> V[i];}for (int i = 0; i < M; i++) {cin >> D[i];}//构建图for (int i = 0; i < M; i++) {Edge e = Edge(V[i], D[i]);graph[U[i]].push_back(e);}solve();return 0;
}

20分dp核心代码:

    // 初始化动态规划数组vector<vector<int>> dis(n, vector<int>(l, -inf));dis[0][0] = 0;  // 起点的初始状态// 动态规划计算最大路径权重for (int u = 0; u < n - 1; u++) {for (auto tem : g[u]) {int v = tem.first, w = tem.second;for (int i = 1; i < l; i++) {if (dis[u][i - 1] == -inf) continue;  // 如果路径不可达,跳过dis[v][i] = max(dis[v][i], dis[u][i - 1] + w);}}}

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

相关文章:

  • 网站后台修改导航栏做情人节网站
  • 舆情网站推荐网站建设规划设计公司排名
  • 旅游网站网页设计方案wordpress痞子
  • 网站应用网站开发小型手机网站建设哪家好
  • 佛山市新城开发建设有限公司网站国内做视频课程的网站有哪些
  • 大连建设教育网站小程序开发流程详解
  • 做网站会后期维护吗如何进入网站后台管理网站
  • 国内外知名建设设计网站花都五屏网站建设
  • 阜宁网站制作服务商2022最新国际新闻10条简短
  • 生成论坛网站wordpress下载连接插件
  • 门户网站开发 项目实施方案专业建设存在问题及改进建议
  • 电子商务网站建设与管理第四章答案品牌建设与市场推广
  • 南昌市建设网站linux建设视频网站
  • 做网站域名和空间费h5模板制作软件
  • 骗子会利用钓鱼网站做啥网站建设佛山
  • 乐山建设局网站成都网站建设有哪些
  • 宏大建设集团有限公司网站经营性质网站
  • 网站网站是怎么做的app开发公司好吗
  • 网站开发多用什么语言网站开发 实战
  • 湘潭自适应网站建设 磐石网络无锡电子商务网站制作
  • 网络优化行业怎么样wordpress 优化原理
  • 北京做网站好什么网站可以做简历
  • 网站表格怎么做的深圳市哪里最繁华
  • 和佳网站建设绵阳吉工建设
  • 西安网站seo技术厂家奢侈品网站排名
  • 一般网站的字体大小像优酷平台网站是怎么做的
  • 新手怎么用DW建设一个网站海外广告公司
  • 哈尔滨快速建站案例二级网站域名
  • 商务网站建设PDF下载wordpress一键关注
  • 做网站创业流程图重庆网上房地产官网查询