<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Let_life_stop的博客]]></title><description><![CDATA[任凭生命去阻拦！]]></description><link>https://blog.youkuaiyun.com/Let_life_stop</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Let_life_stop]]></copyright><item><title><![CDATA[tinyhttp]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/86439622</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/86439622</guid><author>Let_life_stop</author><pubDate>Sun, 13 Jan 2019 22:07:29 +0800</pubDate><description><![CDATA[博客园：http://www.cnblogs.com/letlifestop/

Tinyhttpd 是J. David Blackstone在1999年写的一个不到 500 行的超轻量型 Http Server，用来学习非常不错，可以帮助我们真正理解服务器程序的本质。官网:http://tinyhttpd.sourceforge.net

https://github.com/qiyeboy/S...]]></description><category></category></item><item><title><![CDATA[数位dp（D - How Many Zeroes? LightOJ - 1140 ）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/86420131</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/86420131</guid><author>Let_life_stop</author><pubDate>Sun, 13 Jan 2019 15:21:24 +0800</pubDate><description><![CDATA[题目链接：https://cn.vjudge.net/contest/278036#problem/D


题目大意：T组测试数据，每一次输入两个数，求的是在这个区间里面，有多少个0，比如说19203包括一个0,123包括0个0。



 具体思路：数位dp，对于当前的这一位的所有情况，先看一下这一位上之前的数是不是都是0，如果都是0的话，那么这一位上即使是0也不能计算在内，因为00还是1个0。d...]]></description><category></category></item><item><title><![CDATA[C - Balanced Number HDU - 3709 （数位dp）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/86366563</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/86366563</guid><author>Let_life_stop</author><pubDate>Sat, 12 Jan 2019 17:22:58 +0800</pubDate><description><![CDATA[题目链接：https://cn.vjudge.net/contest/278036#problem/C


题目大意：手首先是T组数据，然后每一次输入两个数l，r，求这个区间里面满足以某个数字为中心的两侧力矩和相等的个数，举个例子，4139，我们如果把3当做对称点，那么力矩和的计算方式= （1-3）*4 + 3*（2-3）+9*（4-3）=0，这个数是满足题目条件的。



具体思路：模板题，我们...]]></description><category></category></item><item><title><![CDATA[G. (Zero XOR Subset)-less（线性基）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/86364015</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/86364015</guid><author>Let_life_stop</author><pubDate>Sat, 12 Jan 2019 16:28:49 +0800</pubDate><description><![CDATA[题目链接：http://codeforces.com/contest/1101/problem/G


题目大意：给你n个数，然后让你把这n个数分成尽可能多的集合，要求，每个集合的值看做这个集合所有元素的异或值，并且任意个集合对应的值，再进行异或也不能为0，然后如果不存在合理的分法的时候，输出-1。否则，输出能分出的最大的集合个数。



具体思路：求出这n个数的线性基就完事了，对于-1的情况，就...]]></description><category></category></item><item><title><![CDATA[D. GCD Counting（树上dp）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/86353409</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/86353409</guid><author>Let_life_stop</author><pubDate>Sat, 12 Jan 2019 15:13:19 +0800</pubDate><description><![CDATA[题目链接：http://codeforces.com/contest/1101/problem/D


题目大意：给你n个点，每个点都有权值，然后给你边的关系，问你树上的最大距离。（这里的最大距离指的是这条路径上的所有数最大gcd&amp;gt;1）。



 具体思路：首先，我们可以找出对于一个父亲节点，他和子节点能够在不是互素的前提下，对于他们每一个因子的个数。

然后我们先dfs到底部，然后看他的每...]]></description><category></category></item><item><title><![CDATA[D - Balanced Ternary String	（贪心）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/86250653</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/86250653</guid><author>Let_life_stop</author><pubDate>Thu, 10 Jan 2019 19:45:18 +0800</pubDate><description><![CDATA[题目链接：http://codeforces.com/contest/1102/problem/D


题目大意：给你一个字符串，这个字符串是由0,1,2构成的，然后让你替换字符，使得在替换的次数最少的前提下，使得新获得的字符串中0,1,2这三个字 符的数目相同，并且新获得的字符串字典序要尽可能的小。



具体思路： 我们先统计出每个字符的个数，想一下，除了三个都相等的情况下，这三个中的某一个肯...]]></description><category></category></item><item><title><![CDATA[数位DP入门（A - 不要62 HDU - 2089 &&B - Bomb HDU - 3555 ）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/86103183</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/86103183</guid><author>Let_life_stop</author><pubDate>Tue, 08 Jan 2019 22:24:36 +0800</pubDate><description><![CDATA[题目链接：https://cn.vjudge.net/contest/278036#problem/A


具体思路：对于给定的数，我们按照位数进行运算，枚举每一位上可能的数，在枚举的时候需要注意几个条件，第一个，当前位上不能是4，第二如果前一位是6的话，当前的这一位不能是2，然后注意这个条件就可以了。


AC代码：


#include&amp;lt;iostream&amp;gt;
#include&amp;lt;...]]></description><category></category></item><item><title><![CDATA[D. Sum in the tree（树形+贪心）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/86031805</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/86031805</guid><author>Let_life_stop</author><pubDate>Mon, 07 Jan 2019 22:24:56 +0800</pubDate><description><![CDATA[题目链接;http://codeforces.com/contest/1099/problem/D


题目大意：给出一棵树，每个节点到根节点的路径上经过的所有点的权值之和，其深度为偶数的节点的信息全部擦除了，也就是用-1表示，让你求最终所有点权之和（要求最小）



具体思路：对于每一个节点，这个点到根节点的权值最小的时候是他的所有的根节点的最小值，然后一路更新上去就可以了，最后求值得时候，我们...]]></description><category></category></item><item><title><![CDATA[D. Makoto and a Blackboard（积性函数+DP）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/86021182</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/86021182</guid><author>Let_life_stop</author><pubDate>Mon, 07 Jan 2019 19:33:36 +0800</pubDate><description><![CDATA[题目链接：http://codeforces.com/contest/1097/problem/D


题目大意：给你n和k，每一次可以选取n的因子代替n，然后问你k次操作之后，每个因子的期望。



具体思路：对于给定的n，我们可以将n转换为，n=p1^(k1)*p2^(k2)*p3^(k3)......,然后我们求期望的时候，我们可以求每个因子的期望，然后再将每个因子的期望相乘就可以了（积性函...]]></description><category></category></item><item><title><![CDATA[树形dp&&树的重心（D - Godfather POJ - 3107）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/85837199</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/85837199</guid><author>Let_life_stop</author><pubDate>Sat, 05 Jan 2019 10:23:59 +0800</pubDate><description><![CDATA[题目链接：https://cn.vjudge.net/contest/277955#problem/D


题目大意：求树的重心（树的重心指的是树上的某一个点，删掉之后形成的多棵树中节点数最大值最小）。



具体思路：对于每一个点，我们求出以当前的点为根的根数的节点个数， 然后在求树的重心的时候，一共有两种情况，一种树去除该点后这个点的子节点中存在所求的最大值，还有一种情况是这个点往上会求出最大...]]></description><category></category></item><item><title><![CDATA[树形dp（C - Choosing Capital for Treeland CodeForces - 219D ）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/85831438</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/85831438</guid><author>Let_life_stop</author><pubDate>Sat, 05 Jan 2019 08:31:13 +0800</pubDate><description><![CDATA[题目链接：https://cn.vjudge.net/contest/277955#problem/C


题目大意：输入n，代表有n个城市，然后再输入n-1条有向边，然后让你找出一个改变边数的最小值，使得某个城市能够到达剩余的所有城市，然后问这样的城市有多少个，并且输出这些城市的编号。



 具体思路：我们首先按照题目给的条件建好边，然后树就建好了，对于当前的某个节点，如果这个点要是能够到达剩...]]></description><category></category></item><item><title><![CDATA[树形dp（B - Computer HDU - 2196 ）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/85795297</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/85795297</guid><author>Let_life_stop</author><pubDate>Fri, 04 Jan 2019 20:12:02 +0800</pubDate><description><![CDATA[题目链接：https://cn.vjudge.net/contest/277955#problem/B


题目大意：首先输入n代表有n个电脑，然后再输入n-1行，每一行输入两个数，t1,t2.代表第（i+1）个电脑连向电脑t1，花费是t2，然后问你每个电脑的到其他电脑的最大花费。


 


具体思路：按照图来想，对于节点2，最大的花费的路径可能有两种，第一种，往下遍历他的叶子节点找到最大的，第...]]></description><category></category></item><item><title><![CDATA[树形dp（A - Anniversary party HDU - 1520 ）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/85777832</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/85777832</guid><author>Let_life_stop</author><pubDate>Fri, 04 Jan 2019 15:21:38 +0800</pubDate><description><![CDATA[题目链接：https://cn.vjudge.net/contest/277955#problem/A


题目大意：略



具体思路：刚开始接触树形dp，说一下我对这个题的初步理解吧，首先，我们从根节点开始，往下dfs，dp[i][0]代表我当前的i点不要去舞会，那么对于他的孩子节点，我们是肯定不能去舞会的，所以dp[i][0]=dp[i][0]+max(dp[son][0],dp[son][...]]></description><category></category></item><item><title><![CDATA[状压dp+floyed（C - Hie with the Pie POJ - 3311 ）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/85760944</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/85760944</guid><author>Let_life_stop</author><pubDate>Fri, 04 Jan 2019 10:48:19 +0800</pubDate><description><![CDATA[题目链接：https://cn.vjudge.net/contest/276236#problem/C


题目大意：

给你一个有n+1(1&amp;lt;=n&amp;lt;=10)个点的有向完全图，用矩阵的形式给出任意两个不同点之间的距离。（其中从i到j的距离不一定等于从j到i的距离）现在要你求出从0号点出发，走过1到n号点至少一次，然后再回到0号点所花的最小时间。

输入：包含多组实例。每个实例第一个为n...]]></description><category></category></item><item><title><![CDATA[状压dp（B - 炮兵阵地 POJ - 1185 ）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/85755438</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/85755438</guid><author>Let_life_stop</author><pubDate>Fri, 04 Jan 2019 09:15:18 +0800</pubDate><description><![CDATA[题目链接：https://cn.vjudge.net/contest/276236#problem/B


题目大意：略



 具体思路：和我的上一篇写状压dp的思路差不多，不过就是这个题相当于上一个题的升级版，变成了左右，上下都会有限制，并且限制的步数是2，观察数据范围，如果按照上一个题的话，如果要是计算正确的范围取值的话，肯定会超时，所以我们可以先将所有的满足的情况先筛选出来，就算m取到10...]]></description><category></category></item><item><title><![CDATA[字符串hash&&对字符串hash的理解]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/85628190</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/85628190</guid><author>Let_life_stop</author><pubDate>Wed, 02 Jan 2019 18:04:13 +0800</pubDate><description><![CDATA[ 对字符串hash的一些总结：

1，首先，我们在转化的时候，取底的时候一般是取131这些数，因为要避免不同的字符串对应相同的hash值这种情况的出现。如果卡精度的时候，我们可以采取双模数的方式尽量减少误差，（不过这种东西还是得看脸）。

2，在定义的时候，一般是为了定义成unsigned long long ，这个有一个好处，当爆int的时候，不会带上负号，就相当于对2的64次方进行取模了。

...]]></description><category></category></item><item><title><![CDATA[单调栈（G - Sliding Window POJ - 2823 ）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/85555908</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/85555908</guid><author>Let_life_stop</author><pubDate>Tue, 01 Jan 2019 19:47:39 +0800</pubDate><description><![CDATA[题目链接：https://cn.vjudge.net/contest/276251#problem/G


题目大意：给你n和m，然后问你对于（m，n）这中间的每一个数，（i-m+1，i）这个区间的最小值和最大值。



具体思路：单调队列，对于个数的控制，我们通过队列来实现一个模拟的滑动窗口。然后最值的寻找，我们可以通过控制队列保持单调递增或者单调递减来实现。


STL AC代码（耗时：109...]]></description><category></category></item><item><title><![CDATA[D. Easy Problem（简单DP）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/85371793</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/85371793</guid><author>Let_life_stop</author><pubDate>Sun, 30 Dec 2018 10:21:27 +0800</pubDate><description><![CDATA[题目链接：http://codeforces.com/contest/1096/problem/D


题目大意：给你一个字符串，然后再给你去掉每个字符串的每个字符的花费，然后问你使得字符中不再存在hard这个单词，可以是不连续的。



 具体思路:我们从头开始，非hard的单词就不需要考虑了，然后考虑一下，当遇到a的时候，我们就考虑构成h的最小花费，当遇到har的时候，我们就考虑构成ha的最小...]]></description><category></category></item><item><title><![CDATA[C. Polygon for the Angle（几何）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/85339467</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/85339467</guid><author>Let_life_stop</author><pubDate>Sat, 29 Dec 2018 15:49:51 +0800</pubDate><description><![CDATA[题目链接：http://codeforces.com/contest/1096/problem/C


题目大意:T是测试样例，然后每一次输入一个角度，然后问你在一个n边形里面，能不能构成这个角度，如果能，输出边数，如果没有就输出-1.


 


具体思路：利用一个性质，四边形内的每个点都能被这个四边形内的最小的角度表示出来，也就是倍数关系。

然后我们打表就可以发现，最多是到179度多，这个时...]]></description><category></category></item><item><title><![CDATA[F. Make It Connected（krustra+）]]></title><link>https://blog.youkuaiyun.com/Let_life_stop/article/details/85330755</link><guid>https://blog.youkuaiyun.com/Let_life_stop/article/details/85330755</guid><author>Let_life_stop</author><pubDate>Fri, 28 Dec 2018 20:01:48 +0800</pubDate><description><![CDATA[
题目链接：http://codeforces.com/contest/1095/problem/F



 题目大意：首先给你n个点，然后给你每个点的权值，再给你m条边，这些边可以选也可以不选，然后问你要使这个加边构成的图联通的最小花费。



 具体思路：我们可以先找出权值最小的点，然后别的点都向向这个点连一条边，这是当前使得图联通的最小构图的方法，然后再看一下题目给定的点加上，注意题目给定的...]]></description><category></category></item></channel></rss>