上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 47 下一页
摘要: 题目传送门题意:有n个金矿,每个金矿有抓取的消耗的时间和价值,矿工在原点,问在T时间内能得到的最大的价值分析:唯一和01背包不同的是金矿可能共线,也就是抓取近的金矿后才能抓后面共线的金矿。这是分组背包问题,方法是将点按照斜率排序,如果相等按照距离原点远近排序,将斜率相等的点分成一组,每组的点累加上前... 阅读全文
posted @ 2015-08-28 09:11 Running_Time 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 题目传送门题意:求C(n,0),C(n,1),C(n,2)...C(n,n)中奇数的个数分析:Lucas 定理:A、B是非负整数,p是质数。AB写成p进制:A=a[n]a[n-1]...a[0],B=b[n]b[n-1]...b[0]。则组合数C(A,B)与C(a[n],b[n])*C(a[n-1]... 阅读全文
posted @ 2015-08-27 19:32 Running_Time 阅读(388) 评论(0) 推荐(0) 编辑
摘要: 题目传送门题意:5个集合,每个集合最多200个数字,问是否每个集合挑一个数加起来和为0。分析:显然n^5的程序果断超时,甚至n^3logn的二分也过不了。想n^3的方法,既然判断有没有,那么可以将两个两个的集合合并成两个大集合,再枚举最后一个集合,两个大集合排完序之后一个指针从开头最小开始,另一个从... 阅读全文
posted @ 2015-08-26 18:57 Running_Time 阅读(397) 评论(0) 推荐(0) 编辑
摘要: 题目传送门题意:给两串字符串,操作1:替换其中一个字符串的某个位置的字符 操作2:查询从p开始相等的最长连续长度分析:树状数组可以维护一个区间内公共长度(连续)的情况,查询时用二分查找最远的端点即可。还可以用线段树去做,线段树能处理的问题很多,这题只要往右区间合并就行了。收获:1.线段树的区间合并又... 阅读全文
posted @ 2015-08-26 15:48 Running_Time 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 题目传送门题意:有一个A进制的有限小数,问能否转换成B进制的有限小数分析:0.123在A进制下表示成:1/A + 2/(A^2) + 3 / (A^3),转换成B进制就是不断的乘B直到为0,即(1/A + 2/(A^2) + 3 / (A^3)) * (B^m)。那么(B^m) 一定要能整除(A^n... 阅读全文
posted @ 2015-08-25 21:08 Running_Time 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 题目传送门题意:判三角恋(三元环)。如果A喜欢B,那么B一定不喜欢A,任意两人一定有关系连接分析:正解应该是拓扑排序判环,如果有环,一定是三元环,证明。DFS:从任意一点开始搜索,搜索过的点标记,否则超时。看是否存在两点路程只差等于2,如果存在,则说明有上述的三角环。其他做法。收获:DFS搜索一定要... 阅读全文
posted @ 2015-08-25 20:10 Running_Time 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 题目传送门题意:给出一些花开花落的时间,问某个时间花开的有几朵分析:这题有好几种做法,正解应该是离散化坐标后用线段树成端更新和单点询问。还有排序后二分查找询问点之前总花开数和总花凋谢数,作差是当前花开的数量,放张图易理解:还有一种做法用尺取法的思想,对暴力方法优化,对询问点排序后再扫描一遍,花开+1... 阅读全文
posted @ 2015-08-25 18:39 Running_Time 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 题目传送门题意:完全不懂,最后还是看题解才理解了。第一行字符串是密文变成明文的规则,比如第二个样例:“qwertyuiopasdfghjklzxcvbnm”,‘q'对应的明文为’a','w'对应'b'....... 第二行是密文+明文的形式,明文有密文转换来,但不完整,求原来最小的可能文本。分析:将... 阅读全文
posted @ 2015-08-24 21:06 Running_Time 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 1. C++大数类模板 版本1:Copy from JayYe/* 高精度模版*/#include #include #include #include #include #include using namespace std;const int numlen = 2005; // 需要的... 阅读全文
posted @ 2015-08-24 17:07 Running_Time 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 题目传送门题意:给一些坐标轴上的点,选一个点,使得其他点到该点曼哈顿距离和最小分析:这题有很强的技巧性,直接计算每个点的曼哈顿距离和是不可行的。这里用到了前缀的思想,先对点按照x从左到右排序,p[i].sum保存选择i点时曼哈顿距离和是多少,p[i].sum = (i - 1) * p[i].x -... 阅读全文
posted @ 2015-08-24 16:45 Running_Time 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 题目传送门题意:如何花最小的代价使得一棵树划分开且不含同类节点分析:当一条边连接的左右集合同类点小于等于1,那么不用删除,将两个集合合并,要求最小代价,那么贪心思想将权值降序排序,删除后剩下的就是最小值了。树形DP的方法以后再补上收获:进一步理解Kruskal的算法过程,碰到新的问题要往经典的算法模... 阅读全文
posted @ 2015-08-24 16:08 Running_Time 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 题目传送门题意:起点s到终点t送电,中途会有损耗,问最小损耗是多少分析:可以转换为单源最短路问题,用优先队列的Dijkstra版本,d[]表示从s出发到当前点的最小损耗,用res保存剩下的电量。当到达t就结束,因为按照w从小到大排序,访问过的点都已经最优,这是贪心思想收获:复习了Dijkstra,进... 阅读全文
posted @ 2015-08-24 14:48 Running_Time 阅读(252) 评论(0) 推荐(0) 编辑
摘要: C语言运算符优先级 详细列表文章转自:Slyar Home优先级运算符名称或含义使用形式结合方向说明1[]数组下标数组名[常量表达式]左到右()圆括号(表达式)/函数名(形参表).成员选择(对象)对象.成员名->成员选择(指针)对象指针->成员名2-负号运算符-表达式右到左单目运算符(类型)强制类型... 阅读全文
posted @ 2015-08-24 14:20 Running_Time 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 方法1:行列式设三角形的面积为S, 则S = (1/2)*(下面行列式)|x1 y1 1| |x2 y2 1| |x3 y3 1|即 S=(1/2)*(x1*y2+x2*y3+x3*y1-x1*y3-x2*y1-x3*y2) = (1 / 2) * ((x2 - x1) * (y3 - y1) - ... 阅读全文
posted @ 2015-08-23 20:11 Running_Time 阅读(4302) 评论(0) 推荐(0) 编辑
摘要: 题目传送门题意:给了n个点的坐标,问能有几个凸四边形分析:数据规模小,直接暴力枚举,每次四个点判断是否会是凹四边形,条件是有一个点在另外三个点的内部,那么问题转换成判断一个点d是否在三角形abc内 易得S (abd) + S (acd) + S (bcd) == S (abc),求三角形面积收... 阅读全文
posted @ 2015-08-23 19:54 Running_Time 阅读(263) 评论(0) 推荐(0) 编辑
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 47 下一页