听话薯片

文章
7
资源
0
加入时间
2年10月21天

洛谷 P1273 有线电视网 题解

题面按照常见树形背包定义状态:设dp[u][j]表示在以u为根的子树中,选择j个客户所能获得的最大收益。状态转移:dp[u][j]=max(dp[u][j-k],dp[v][k]-w(u,v));注意因为二维的是滚动数组,所以应该倒着循环。#include <bits/stdc++.h>using namespace std;int n,m;...

第七十一条 慎用延迟初始化

延迟初始化是延迟到需要域的值时才将它初始化的这种行为。如果永远不需要这个值,那么这个域就永远不会被初始化,这种方法既适用于静态域,也适用于实例域。延迟初始化主要是一种优化方式。就像大多数的优化一样,对于延迟初始化,最好建议“除非绝对必要,否则就不要这么做”。延迟初始化就像一把双刃剑。它降低了初始化类或者创建实例的开销,却增加了访问被延迟初始化的域的开销。根据延迟初始化的域最终需要初始化的比例、...