12 2024 档案
摘要:一般而言,c++中保留小数有两种做法。 cout double ans=3.1415926; cout<<setprecision(2)<<ans; output 3.14 但需要注意的是,如果小数没有预设的那么长,其后面不会补零而是会改为空格。因此不太建议。 如果cout要四舍五入的话要加fixe
阅读全文
摘要:不得不说,状压DP是我比数位DP还要烂的板块。尽管其代码很短,但每次写的仍然漏洞百出,要调很久,还是太不熟练了。 以前一直搞不清楚状压与数位的区别,现在大概知道了:数位更专注于“数”,而状压只是一般而言将数据转化为二进制(当然也有三进制之类的神秘做法)方便转移及处理。 P1896 [SCOI2005
阅读全文
摘要:树套树是一种相当高级的数据结构,同时因为树本身的种类就有很多,因此“树套树”就千变万化,层出不穷。 但是一般而言,树状数组、线段树以及平衡树是树套树中相对常用的树。同时,因为树套树本身常数过于巨大,因此一般而言解题时能用树状数组就别用线段树,能用线段树就别用平衡树。 P2617 Dynamic Ra
阅读全文
摘要:矩阵快速幂是一种常用于DP的算法。通过矩阵乘法去快速转移状态求解。 但是由于矩阵运算的复杂度极高,因此一般而言矩阵快速幂优化DP的决策点不能太多。 矩阵快速幂的另一种应用是图论中的路径经过方案数的问题 具体来讲有一个结论:邻接矩阵的k次方表示某两个点之间路径距离为k的方案数,只不过需要注意在有向图中
阅读全文

浙公网安备 33010602011771号