上午看书总结 今天上午我看了拓扑排序,DFS+剪枝,相当于回顾了一下,写了三个比较好的例题。算法竞赛指南93~109页。 1.状态压缩+拓扑排序 https://www.cnblogs.com/2462478392Lee/p/11285039.html 2.DFS+剪枝 https://www.cn Read More
posted @ 2019-08-01 22:07 Ldler Views(136) Comments(0) Diggs(0) Edit
题目链接 题意:n个数,q次查询,查询[l , r] 内, | a[i] - p | 第k大的数 思路:主席树维护下权值大小,二分答案,查询区间[p - mid, p + mid] 的个数 #include<cstdio> #include<cstring> #include<algorithm> Read More
posted @ 2019-08-01 22:07 Ldler Views(187) Comments(0) Diggs(0) Edit
题目链接 题意:多组输入三角形各个顶点坐标p1,p2,p3,在三角形中任取一点p,计算 期望E=max(S(p,p1,p2),max(S(p,p1,p3),S(p,p2,p3))); 思路:用随机数找规律,找到了篇大佬的博客https://blog.csdn.net/weixin_43350051/ Read More
posted @ 2019-08-01 22:05 Ldler Views(173) Comments(0) Diggs(0) Edit
题目链接 题意:给你两个字符串都是数字,让你求第一个字符串的子序列中大于第二个字符串的个数。 思路:dp[i][j] 表示 str1的前i个,匹配 str2的前 j 个的种类数,那么 if(s[i] == t[j]) dp[i][j] = dp[i -1][j] + dp[i - 1][j - 1] Read More
posted @ 2019-08-01 21:33 Ldler Views(119) Comments(0) Diggs(0) Edit
题目链接 题意:给你蛋糕的总体积和有几层,且蛋糕满足从低到高一层比一层的面积小,高度低。求最小的外表面积。 思路:因为求外表面积,实际上就是求每一层的侧面积+最底层的上表面积。然后可以算出最小的每层面积,便于剪枝,然后从下往上DFS,不断枚举高度和半径就可以解决问题。 #include<cstdio Read More
posted @ 2019-08-01 20:59 Ldler Views(258) Comments(0) Diggs(0) Edit
题目链接 题意:给你一组等长木棒,然后他随意砍断成n个木棒,木棒长度不一,但你知道分别是多少,要你求出原始木棒可能的最小长度。 思路:首先那个原始木棒的长度肯定是其总长度的约数,然后也肯定大于等于所有木棒的最大值,然后去DFS,要注意的是,DFS的过程中我肯定先从大的取起,这样可以优化搜索顺序,然后 Read More
posted @ 2019-08-01 20:45 Ldler Views(505) Comments(0) Diggs(0) Edit
题目链接 题意:给定一张N个点M条边的有向无环图,分别统计从每个点出发能够到达的点的数量。N,M<=30000。 思路:先拓扑排序,这样肯定拓扑序前面的肯定在拓扑序后面的点的前面。然后用状态压缩,用bitset转化成二进制,一顿从后往前按位或,有多少1就代表有多少个能达到的点的数量。 #includ Read More
posted @ 2019-08-01 20:31 Ldler Views(316) Comments(0) Diggs(0) Edit