<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_41287489的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_41287489</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_41287489]]></copyright><item><title><![CDATA[01分数规划]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/80544600</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/80544600</guid><author>qq_41287489</author><pubDate>Sat, 02 Jun 2018 00:53:17 +0800</pubDate><description><![CDATA[01分数规划是这样的一类问题，有一堆物品，每一个物品有一个收益ai，一个代价bi，我们要求一个方案使选择的∑ai/∑bi最大。首先我们来一道例题吧，01分数规划的大体方法都是一样的。例： Dropping Tests poj2976给出n个物品，每个物品有两个属性a和b，选择n-k个元素，询问∑ai/∑bi∑ai/∑bi的最大值。1&amp;lt;=n&amp;lt;=1000，0&amp;lt;=k&amp;lt;n，0&amp;lt...]]></description><category></category></item><item><title><![CDATA[最小生成树模版与次小生成树]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/80542233</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/80542233</guid><author>qq_41287489</author><pubDate>Fri, 01 Jun 2018 20:03:07 +0800</pubDate><description><![CDATA[prim算法：类似于dij算法，将每个点距离已经加入的点的集合的最短距离算出，每次取出这些距离里最短的点加入集合，并在每次加入新的点后更新这些距离即可。算法模版：#define INF 32767;
void Prim(MGraph g,int v)
{
    int lowcost[MAXV];
    int min;
    //就是对应的元素下标的顶点的连接的上一个顶点
    int ...]]></description><category></category></item><item><title><![CDATA[矩阵快速幂模版]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/80331398</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/80331398</guid><author>qq_41287489</author><pubDate>Wed, 16 May 2018 01:11:39 +0800</pubDate><description><![CDATA[const int N=10;  
int tmp[N][N];  
void multi(int a[][N],int b[][N],int n)  
{  
    memset(tmp,0,sizeof tmp);  
    for(int i=0;i&amp;lt;n;i++)  
        for(int j=0;j&amp;lt;n;j++)  
        for(int k=0;k&amp;l...]]></description><category></category></item><item><title><![CDATA[（位运算的妙用与线段树）2018湘潭大学校赛H题-统计颜色]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/80109875</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/80109875</guid><author>qq_41287489</author><pubDate>Fri, 27 Apr 2018 16:42:49 +0800</pubDate><description><![CDATA[原题链接：https://www.nowcoder.com/acm/contest/105/Hn个桶按顺序排列，我们用1~n给桶标号。有两种操作：1 l r c 区间[l,r]中的每个桶中都放入一个颜色为c的球 (1≤l,r ≤n,l≤r,0≤c≤60)2 l r   查询区间[l,r]的桶中有多少种不同颜色的球     (1≤l,r ≤n,l≤r)暴力枚举可以过，但遇到此类区间问题更偏向于线段树...]]></description><category></category></item><item><title><![CDATA[二分查找模版（最大值，最小值，浮点数的二分）与三分搜索模版]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/80005264</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/80005264</guid><author>qq_41287489</author><pubDate>Thu, 19 Apr 2018 15:18:33 +0800</pubDate><description><![CDATA[最大化最小值（二分值最小越小越容易满足条件，求最大值）区间长度为1时的写法：解的范围为 [lb,rb][lb,rb]// 计算区间为[lb, rb]
while( rb &amp;gt; lb )  // 区间长度为1时终止循环
{
    // 防止溢出
    int m = lb + (rb - lb + 1) / 2;    // 由于是区间长度为1时终止循环，所以要加1
    if( ok(m...]]></description><category></category></item><item><title><![CDATA[线段树与树状数组模版]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79930890</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79930890</guid><author>qq_41287489</author><pubDate>Fri, 13 Apr 2018 18:01:05 +0800</pubDate><description><![CDATA[线段树（递归实现，以求和为例）：定义部分#define maxn 100007  //元素总个数  
#define ls l,m,rt&amp;lt;&amp;lt;1  
#define rs m+1,r,rt&amp;lt;&amp;lt;1|1  
int Sum[maxn&amp;lt;&amp;lt;2],Add[maxn&amp;lt;&amp;lt;2];//Sum求和，Add为懒惰标记   
int A[maxn],n;//存原数组数据下标[...]]></description><category></category></item><item><title><![CDATA[区间DP+平行四边形优化分析]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79587766</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79587766</guid><author>qq_41287489</author><pubDate>Fri, 16 Mar 2018 22:51:17 +0800</pubDate><description><![CDATA[区间DP模版：for (int len = 1; len &amp;lt; n; len++) { //操作区间的长度
        for (int i = 0, j = len; j &amp;lt;= n; i++, j++) { //始末
            //检查是否匹配（非必须）
            for (int s = i; s &amp;lt; j; s++) {
            ...]]></description><category></category></item><item><title><![CDATA[单调栈模版+简析]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79579149</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79579149</guid><author>qq_41287489</author><pubDate>Fri, 16 Mar 2018 11:41:24 +0800</pubDate><description><![CDATA[单调栈：栈内的元素都保持单调递增或者单调递减的栈。应用：可以在O(N)的时间复杂度内用于求对于一组数列的中的某个元素，向左/右第一个比它大/小的元素的位置。（如果不采用单调栈而是暴力查找的话，时间复杂度为O(N^2）图解：假设下图是一个栈内元素的排列情况(单调递增的栈)：此时插入情况有两种： (1).插入元素大于栈顶元素 当插入7时，因7 &amp;gt; 6，满足单调递增的条件，故可以直接加入栈 此时：...]]></description><category></category></item><item><title><![CDATA[收藏夹]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79499883</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79499883</guid><author>qq_41287489</author><pubDate>Fri, 09 Mar 2018 16:56:39 +0800</pubDate><description><![CDATA[贪心-区间问题：http://longgongshiye.blog.163.com/blog/static/1714825972011712105027741/CCCC天梯赛L3-011“直捣黄龙”：https://blog.youkuaiyun.com/qq_27601815/article/details/69344260树状数组+逆序对  HDU-2838 https://blog.youkuaiyun.com/u...]]></description><category></category></item><item><title><![CDATA[浅谈差分约束算法]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79491937</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79491937</guid><author>qq_41287489</author><pubDate>Fri, 09 Mar 2018 00:08:16 +0800</pubDate><description><![CDATA[参考：http://www.cppblog.com/menjitianya/archive/2015/11/19/212292.html （理论部分）        https://www.cnblogs.com/zhangmingcheng/p/3929394.html  （题集举例）差分约束系统有两种方式可以求解，最短路和最长路。当我们把不等式整理成d[a]+w&amp;lt;=d[b]时，我们求最长...]]></description><category></category></item><item><title><![CDATA[并查集]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79401724</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79401724</guid><author>qq_41287489</author><pubDate>Tue, 06 Mar 2018 10:40:45 +0800</pubDate><description><![CDATA[并查集是一种可以高效完成以下操作的数据结构：1.查询元素a与元素b是否属于同一分组。2.合并元素a和b所属的分组。对于并查集，每次查询如果不使用路径压缩，在极端情况下将会退化为一条链，如下：int findfat(int x)
{
	if(fat[x] == x) return x;
	return findfat(fat[x]);
}在树型数据结构里，如果发生了退化的情况，那么复杂度就会变得很高...]]></description><category></category></item><item><title><![CDATA[最小生成树（森林）：Prim算法与Kruskal算法  (以POJ1287为例)]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79433526</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79433526</guid><author>qq_41287489</author><pubDate>Tue, 06 Mar 2018 10:35:55 +0800</pubDate><description><![CDATA[Prim算法：Prim算法类似于Dijkstra算法，但又不尽相同。我们首先设一个只包含一个随机选取的结点v的集合T（T即为已加入最小生成树的点的集合）然后贪心地选取其他未加入集合中的点与T的距离最短的点即可，如此迭代这一过程，直到所有的点都已加入集合T，即得到了最小生成树。图示分析：https://www.61mon.com/index.php/archives/199/POJ1287-NETW...]]></description><category></category></item><item><title><![CDATA[CodeForces - 782C Andryusha and Colored Balloons]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79425678</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79425678</guid><author>qq_41287489</author><pubDate>Fri, 02 Mar 2018 17:44:24 +0800</pubDate><description><![CDATA[C. Andryusha and Colored Balloonstime limit per test 2 secondsmemory limit per test 256 megabytesinput standard inputoutput standard outputAndryusha goes through a park each day. The squares and paths...]]></description><category></category></item><item><title><![CDATA[【二分】 Codeforces Round #403 (Div. 2)B. The Meeting Place Cannot Be Changed]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79418526</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79418526</guid><author>qq_41287489</author><pubDate>Thu, 01 Mar 2018 23:23:31 +0800</pubDate><description><![CDATA[B. The Meeting Place Cannot Be Changedtime limit per test5 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputThe main road in Bytecity is a straight line from south to n...]]></description><category></category></item><item><title><![CDATA[我没写出来的题 开个帖子记录 用来自己看]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79393994</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79393994</guid><author>qq_41287489</author><pubDate>Tue, 27 Feb 2018 22:24:50 +0800</pubDate><description><![CDATA[CF#822C：Hacker, pack your bags!优秀题解：http://blog.youkuaiyun.com/junior19/article/details/74536958时间段处理问题，先按照开始或结束时间完成排序，再使用贪心法解决问题。...]]></description><category></category></item><item><title><![CDATA[STL中的一些实用而有趣的数据结构]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79336106</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79336106</guid><author>qq_41287489</author><pubDate>Sun, 18 Feb 2018 23:55:40 +0800</pubDate><description><![CDATA[优先队列1.可以插入一个数值。2.取出最小/大数值，获得数值，并且删除。头文件&amp;amp;说明#include&amp;lt;queue&amp;gt;usingnamespacestd;复杂度：对每个元素，插入和删除只是修改了堆顶和堆底，不需要所有的都排序，只是需要再次调整好堆，因此时间复杂度都是O(logN)常用格式：priority_queue &amp;lt;node&amp;gt; q;
//node是一个结构体
//结...]]></description><category></category></item><item><title><![CDATA[EOJ Monthly 2018.2 (Good bye 2017) A2. 坑爹的售票机【完全背包】]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79324018</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79324018</guid><author>qq_41287489</author><pubDate>Wed, 14 Feb 2018 01:23:55 +0800</pubDate><description><![CDATA[题目：http://acm.ecnu.edu.cn/contest/51/problem/A2/因为所给纸币面值可以用来贪心，所以先用贪心算法得出买n张票的所需最少纸币数。接着，因为没有规定总共可以买几次票，就是一个完全背包问题。背包容量为买票数目，每种买票方式为一个物品，方式所花纸币数目为物品价值，所买票数为物品重量。但由于题中所给数据过大，无法创造如此庞大的dp[数组]，故我们采用类似于滚动数...]]></description><category></category></item><item><title><![CDATA[图的存储与遍历（链式前向星中的DFS与BFS）]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79323313</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79323313</guid><author>qq_41287489</author><pubDate>Tue, 13 Feb 2018 22:11:20 +0800</pubDate><description><![CDATA[图的存储方式：1.图的数组（邻接矩阵）存储表示，其中无向图的存储方式为对称矩阵数组，有向图的存储方式为非对称矩阵数组。求最短路径时常常采用数组存储表示各点间的路径。2.边集方法                    边的定义：     stuct edge_set｛         int u,v;         int weight;       ｝edge[N];边的结点：edge[i].u...]]></description><category></category></item><item><title><![CDATA[「关于单源最短路径的三种算法的思考（不包括计算多点路径的Floyd算法）」]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79317438</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79317438</guid><author>qq_41287489</author><pubDate>Tue, 13 Feb 2018 00:55:52 +0800</pubDate><description><![CDATA[从Bellman-Ford算法（可以处理负值，检测负权回路，但复杂度过高）开始，Bellman-ford算法是求含负权图的单源最短路径算法；效率很低，但代码很容易写；复杂度很高：O（VE） v为顶点数，e为边数。思想：进行不停地松弛，每次松弛把每条边都更新一下，直到一次遍历所有边的松弛操作无法更新结点间的最短距离。若n-1次松弛后还能更新，则说明图中有负环（因为最短路不会同时经过同一个点两次，也就...]]></description><category></category></item><item><title><![CDATA[【线段树】Codeforces 767C Garland]]></title><link>https://blog.youkuaiyun.com/qq_41287489/article/details/79310038</link><guid>https://blog.youkuaiyun.com/qq_41287489/article/details/79310038</guid><author>qq_41287489</author><pubDate>Sun, 11 Feb 2018 13:35:41 +0800</pubDate><description><![CDATA[C. Garlandtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputOnce at New Year Dima had a dream in which he was presented a fairy garland. A garland i...]]></description><category></category></item></channel></rss>