博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj3249Test for Job(记忆化搜索)
阅读量:6690 次
发布时间:2019-06-25

本文共 715 字,大约阅读时间需要 2 分钟。

/*   题意:给一个DAG图,n个节点,每个节点都对应一个值,入度为零的点走到出度为零的点,计算所有可能路径   经过节点值的和最大!      思路:记忆话搜索:也就是如果我们搜索到某一个节点的时候发现该节点已经存在了值,那么直接返回该节点的值!         和回溯的思想差不多吧!                   注意:我们是正向建图,并且记忆话搜索是先将子节点的最优值计算出来,然后在计算父节点的最优值               所以最终的最优值的结果在 入度为0的节点上! */#include
#include
#include
#include
#include
#define INF -0x3f3f3f3f#define N 100005using namespace std;vector
g[N];int v[N], dp[N], vis[N];int n, m;int dfs(int u){ if(g[u].size()==0) return dp[u]=v[u]; if(dp[u]!=INF) return dp[u];//如果u节点已经根据其 子节点 计算过了,直接返回 int len=g[u].size(); for(int i=0; i
maxCost) maxCost=dp[i]; g[i].clear(); } printf("%d\n", maxCost); } return 0;}

转载地址:http://rhuoo.baihongyu.com/

你可能感兴趣的文章
aaa认证
查看>>
js JSON对象属性
查看>>
Linux-常用快捷键
查看>>
Java 如何产生UUID
查看>>
学习第3天
查看>>
c语言 拼接字符串
查看>>
实验:传输层:TCP协议
查看>>
gluon 实现多层感知机MLP分类FashionMNIST
查看>>
需求分析评价
查看>>
LeetCode – Refresh – Longest Substring with At Most Two Distinct Characters
查看>>
shell编程系列19--文本处理三剑客之awk中的字符串函数
查看>>
pytorch的函数中的dilation参数的作用
查看>>
数据排序
查看>>
HDU2504 又见GCD
查看>>
CenOS下安装jdk
查看>>
online_judge_1106
查看>>
MVC和三层架构的区别
查看>>
笔记分享
查看>>
B树 B+树 B*树
查看>>
转载:汇编语言里 eax, ebx, ecx, edx, esi, edi, ebp, esp这些都是什么意思啊?
查看>>