随笔分类 - 题解篇
摘要:Tetrahedron 题意:看图就行。 首先很关键的是对那个1/h^2的转化。 思路一:等积法,高中的求法。因为是上面是三个直角所以可以把体积求出,下面三条边也可以求出,那么底面积也可以求出,那么高h也可以得到。 但是这样就得到了比较麻烦的一个高次多项的式子,就要像题解那样考虑来考虑去,很麻烦。
阅读全文
摘要:非常好的一道单调栈的题。 首先说一下单调栈,它维护的是一个单调的序列。 如果维护递增序列,那么栈顶大于当前值时,就pop栈顶,这样之后可以发现,栈顶的元素是左边最近的小于当前值的元素。 那么对于这道题,有一个很巧妙的转化方法:合并矩形 图片详解可见:https://blog.csdn.net/qq_
阅读全文
摘要:Equal Sentences 思路:因为下标的限制,交换后位置不能和原来超过1。 那么,和后面交换,可以看成后面的和前面的交换。 那么对于每一个位置,只需要看和前面交换即可。 对于没有冲的ABCD类的位置交换组合。 经过递推之后,可以发现就是个斐波那契数列。 当引入了重复后,从只和前面的交换来看。
阅读全文
摘要:Little W and Contest 思路:首先很显然是并查集去维护答案。 一开始,所有点都是独立的。那么设CF1 = 1的总个数。CF2 = 2的总个数 那么一开始ans = C(CF1,1)*C(CF2,2)+C(CF2,3). 那么考虑合并后怎么维护答案。 这里运用了容斥思想。 当我们合并
阅读全文
摘要:Intersection 思路:可以发现,如果出现了重复的情况,那么就会导致时间变化。 那么,当出现了重复情况时,我们就让左边的往上走到上面那层,这样对于第一个的时间,没有变化。 因为停在原地的话,和往上走一次都+1.所以时间一样。 但是向上走之后,对于下面的都可以向上1步,所以当发现碰撞时,都保持
阅读全文
摘要:Car: 思路:暴搜,对于每一个尾数,显然只会在5天中的某一天被禁止。 那么5^10.不会爆 但是如果用字符串cin输入字符串,就会因为输入过慢而TLE,那么这里直接把字符输入变成整形,然后取最后一位即可。 Code: #include<bits/stdc++.h> using namespace
阅读全文
摘要:Total Eclipse 思路:先考虑一种普遍解法。 对于每个极大连通块,一次次块上的全部点减去1,断开为子图后继续重复减1,显然是最优的减法。 但是减去后遍历边的复杂度过高,且b值也很大,所以考虑成加边的形式。 首先将点按权值降序。那么我们可以采取将最大的点减成第二大的点,然后两个点又一起减成第
阅读全文
摘要:1005 : Fibonacci Sum 从斐波那契的通项入手。 思路: 所以 $ans = \sum_{i = 0}^{n} ans1^k = \sum_{i = 0}^{n} \frac{1}{T^k} (b^i-c^i)^k$ 令$f[i] = (b^i-c^i)^k$ 那么ans = $\f
阅读全文
摘要:题目:洛谷-p2285 思路: 首先说一个究极坑点:居然用结构体就TLE,数组就能够AC。(第一次被这样恶心到。。) 思路: 一开始以为是地图dp,仔细思考后首先三维空间太大,而且也难以dp。 因为time是按递增顺序给出。那么显然对于第i个地鼠,如果从第i-1个地鼠到第i个地鼠的时间>=他们的曼哈
阅读全文
摘要:统计相同垂直的直线。 看成向量后,发现相互垂直的就满足这个条件. 假如当前线段为a,b,c,d,e,f. 我们把互相垂直的看成一个整体 a b c-d e-f. 考虑用插入的方案形成一个最终的结果序列。 对于a的插入,因为没有垂直的可以影响,那么如果a的个数为x个。 a的插入方案数为2^x.对于每个
阅读全文
摘要:前言:随缘更新,水题不写. 题目:奇♂妙拆分 思路: 很显然是个质因子分解的思路。 map统计下没被分解过的因子即可. Code: #include<iostream> #include<stdio.h> #include<queue> #include<algorithm> #include<ma
阅读全文

浙公网安备 33010602011771号