摘要:
题目链接题意:成段染色,初始为0,每次改变一个区间的颜色,求最后每种颜色分别有多少段。颜色按照从小到大输出。分析:改变了代码的风格,因为看了学长的博客。直接用数组,可以只是记录节点的编号,因为节点编号确定了,则l,r也就确定了。 1 #include 2 #include 3 #include ... 阅读全文
摘要:
题目链接题意:只有这两种操作Cabc" means addingcto each ofAa,Aa+1, ... ,Ab. -10000 ≤c≤ 10000."Qab" means querying the sum ofAa,Aa+1, ... ,Ab.代码风格更新后: 1 #include 2 #... 阅读全文
摘要:
题目链接题意: n个挂钩,q次询问,每个挂钩可能的值为1 2 3, 初始值为1,每次询问把从x到Y区间内的值改变为z。求最后的总的值。分析:用val记录这一个区间的值,val == -1表示这个区间值不统一,而且已经向下更新了,val != -1表示这个区间值统一, 更新某个区间的时候只需要把这个区... 阅读全文
摘要:
题目链接题意:给n个数,求交换k次相邻的数之后的最小的逆序数对。用分治的方法,以前在poj上做过这种题,昨天比赛的时候忘了。。。。下面的归并排序还是以前的模板。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #includ... 阅读全文
摘要:
题目链接题意:给两个矩阵a, b, 计算矩阵a*b的结果对3取余。分析:直接计算时间复杂度是O(n^3),会超时,但是下面第一个代码勉强可以水过,数据的原因。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include... 阅读全文
摘要:
题目链接题意:有N个人排队,给出各个人想插队的位置和标识,要求输出最后的序列。分析:因为之前的序列会因为插队而变化,如果直接算时间复杂度很高,所以可以用线段树逆序插入,把序列都插到最后一层,len记录该区间里还剩余多少位置,插入的时候就插到剩余的第几个位置,比如1,2已经插入了,如果再想插入第3个位... 阅读全文
摘要:
题目链接中文题意,与上题类似。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 const int maxn = 200000+10; 8 using namespace std; 9 int a[m... 阅读全文
摘要:
题目链接线段树掌握的很差,打算从头从最简单的开始刷一波, 嗯。。就从这个题开始吧! 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 const int maxn = 50000+10; 8 using... 阅读全文
摘要:
题目链接分析:完全背包的变形,每一层的d[]数组代表这一层的这个数新加入以后所构成的val的种类。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 const int maxn = 500+10; 8... 阅读全文
摘要:
题目链接题意:一个m个面的骰子,抛掷n次,求这n次里最大值的期望是多少。(看样例就知道)分析:m个面抛n次的总的情况是m^n, 开始m==1时,只有一种现在增加m = 2, 则这些情况是新增的那个的第一次的结果的后面最大的都是新增的,之前的这些的分支也加上这个数,而且这个数是这一支里最大的,也就是说... 阅读全文
摘要:
题目链接题意:在有费用k限制的条件下,求从1到n的最短距离,如果最短距离相同求费用最小的,边为有向边,其中可能有多个相同的源点和目标点,但是距离和费用不同。分析:用bfs和邻接表来把每一个边搜一下,因为用了优先队列,所以先到n的一定是最小的 。 1 #include 2 #include 3 #... 阅读全文
摘要:
题目链接题意:给一个数组a,从中选择一些元素,构成两个数组s, t,使s数组里的所有元素异或等于 t数组里的所有元素 位于,求有多少种构成方式。要求s数组里 的所有的元素的下标小于 t数组里的所有的元素的下标。分析:比赛的时候,刚开始脑子很乱,后来想了一下思路也敲了,发现自己的程序结果不对自己一点一... 阅读全文
摘要:
昨天cf做的不好,居然挂零了,还是1点开始的呢。,,,a题少了一个条件,没判断长度。写一下B题吧题目链接题意:给出(n, m),可以得到一个矩形让你依次连接矩形内的4个点使它们的长度和最长,而这三条线段可以相交、交叉分析:这种情况下,枚举对角线的四个点,当时我也想过,我只用了其中的一种方式,其实有四... 阅读全文
摘要:
题目链接题意:给N条信息,每个信息代表有x个人从开始的时间 到 结束的时间在餐厅就餐,问最少需要多少座位才能满足需要。分析:由于时间只有24*60 所以把每个时间点放到 数组a中,并标记开始的时间+x,结束的时间 -x。最后累加比较。如果时间点太多的时候可以把时间点放到结构体里,排序,然后依次枚举结... 阅读全文
摘要:
题意:You are given a long longn. Return the largest divisor ofnthat is a perfect square. That is, the correct return value is x if and only if:x divides... 阅读全文
摘要:
题目链接题意:给一个m*n的矩阵, 其中一些格子是空地(F), 其他是障碍(R)。找一个全部由F组成的面积最大的子矩阵, 输出其面积乘以3的结果。思路:如果用枚举的方法,时间复杂度是O(m^2 n^2);因为不但要枚举每一个点,而且矩阵的大小不知道,所以还要枚举长和宽。可以通过枚举每一个点,求该点所... 阅读全文
摘要:
题目链接非原创 原创地址:http://blog.csdn.net/jingqi814/article/details/26117241题意:输入n座山的信息(山的横坐标,高度,山底宽度),计算他们的轮廓线,即露出来的表面边长,有些山是重叠的不计。空白地带不计,每座山都是等腰三角形。分析:大白书P4... 阅读全文
摘要:
unique()函数是一个去重函数,STL中unique的函数 unique的功能是去除相邻的重复元素(只保留一个),还有一个容易忽视的特性是它并不真正把重复的元素删除。他是c++中的函数,所以头文件要加#include,具体用法如下: int num[100]; unique(num,mun+n)... 阅读全文
摘要:
题目链接题意:求 A^B的所有约数之和对9901取模后的结果。分析:看了小优的博客写的。分析来自 http://blog.csdn.net/lyy289065406/article/details/6648539(1) 整数的唯一分解定理: 任意正整数都有且只有一种方式写出其素因子的乘积表达式。 A... 阅读全文
摘要:
题目链接题意:有N个城市被M条道路连接起来了,每两个城市之间可能存在超过一条路,但是城市之间是单向连接的。每条路是要花费的。每条路的花费可以选择两种方式:1:假如a城市到达b城市,如果之前经过了c城市,那么这条路上的花费为P也可以为R。2:如果没有经过c,则这条路上的花费为R。问从城市1到城市n最小... 阅读全文