05 2018 档案

摘要:题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2721 可以知道 x 和 y 一定都大于 n! ,不妨把 y 表示为 n!+t ; 那么 1/x + 1/y = 1/x + 1/(n!+t) = 1/n! ; 整理一下,最终变成:x = (n 阅读全文
posted @ 2018-05-31 23:04 Zinn 阅读(291) 评论(0) 推荐(0)
摘要:题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1037 记录每个状态时前面所有连续子序列中男生与女生差距的最大值,根据那个转移即可。 代码如下: 阅读全文
posted @ 2018-05-31 17:46 Zinn 阅读(184) 评论(0) 推荐(0)
摘要:题目:https://www.luogu.org/problemnew/show/P2221 似乎按点来算贡献很方便,但我抱住一篇没有这样的题解磕了两天... 以下转载: 题意:维护一段数列 支持区间加和求区间所有子区间的和的和 一看就知道要用线段树 于是用sum表示区间所有子区间的和的和 但是知道 阅读全文
posted @ 2018-05-30 23:24 Zinn 阅读(276) 评论(0) 推荐(0)
摘要:题目:https://www.luogu.org/problemnew/show/P2473 还是对DP套路不熟悉... 像这种前面影响后面,而后面不影响前面的问题就应该考虑倒序递推; 看n只有15那么考虑状压,期望什么的就是除一下n就行了。 代码如下: 阅读全文
posted @ 2018-05-28 22:51 Zinn 阅读(126) 评论(0) 推荐(0)
摘要:题目:https://www.luogu.org/problemnew/show/P2148 先打表找个规律: #include<iostream> #include<cstdio> #include<cstring> using namespace std; int sg[25][25]; voi 阅读全文
posted @ 2018-05-24 22:50 Zinn 阅读(279) 评论(0) 推荐(0)
摘要:题目:https://www.luogu.org/problemnew/show/P2575 第一次用SG函数解决问题,有许多不熟练的地方; 试图按自己的理解写一个dfs,结果错了(连题都没读对,以为是像跳棋一样跳),这样的话用dfs从左往右推就不行了呢; 附上自己的错误尝试: #include<i 阅读全文
posted @ 2018-05-24 00:22 Zinn 阅读(247) 评论(0) 推荐(0)
摘要:题目:https://www.luogu.org/problemnew/show/P1199 仔细想想,两方都拿不到每个武将的配对中最大的; 本来想的是如果有武将a,b,对应最大ma,mb,次大ca,cb,那么自己选了a,电脑选了mb,接下来自己选b,若mb<ca,则电脑选了ca,自己就可以选mb, 阅读全文
posted @ 2018-05-22 18:55 Zinn 阅读(215) 评论(0) 推荐(0)
摘要:题目:https://www.luogu.org/problemnew/show/P1290 只要出现n>=2*m,就可以每次把较大的数控制在较小的数的一倍与二倍之间,则控制了对方的走法; 每次取后两个数大小交换,这时可能出现整除,而上述方法可以保证每次可能出现整除时都轮到自己,所以必胜。 代码如下 阅读全文
posted @ 2018-05-22 18:21 Zinn 阅读(149) 评论(0) 推荐(0)
摘要:题目:https://www.luogu.org/problemnew/show/P1247 可以知道必败局面为n[1]^n[2]^...^n[k]=x=0; 而若x不等于0,则一定可以取一次使其变为0,所以此时为必胜; 取火柴数即为n[i]^x,取掉后异或和变为0; 因为取火柴数为正数,所以要n[ 阅读全文
posted @ 2018-05-22 17:48 Zinn 阅读(196) 评论(0) 推荐(0)
摘要:题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3270 设计一个状态表示两个人分别在两个点的状态,带个标号num[i][j]; 据此得到状态之间转移的关系所构成的n元方程,高斯消元求解; 要注意起点的概率要+1,而且开始时两个人在两个点是有区 阅读全文
posted @ 2018-05-21 22:44 Zinn 阅读(177) 评论(0) 推荐(0)
摘要:题目:https://www.luogu.org/problemnew/show/P1288 分析一下,最优走法就是一下把边权走成0; 所以只要起点到左右最近的两条0边中有一个距离为奇数,则先手必胜,否则必败。 代码如下: 阅读全文
posted @ 2018-05-21 22:17 Zinn 阅读(150) 评论(0) 推荐(0)
摘要:题目:https://www.luogu.org/problemnew/show/P4316 期望水题,从终点向起点推,因为是DAG,所以拓扑序推过去即可。 代码如下: 阅读全文
posted @ 2018-05-19 09:49 Zinn 阅读(191) 评论(0) 推荐(0)
摘要:题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2337 异或就一位一位考虑; x为到n的概率,解方程组即可; 考虑了n就各种蜜汁错误,所以索性不管n了,这样的题好像不管n比较方便。 代码如下: 阅读全文
posted @ 2018-05-17 19:06 Zinn 阅读(173) 评论(0) 推荐(0)
摘要:题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3143 只需算出每条边被经过的概率,将概率从小到大排序,从大到小编号,就可得到最小期望; 每条边经过的概率是其两端的点被走的次数/该点的度数的和; 而每个点被走的次数又需要从与其相连的点推过来, 阅读全文
posted @ 2018-05-17 18:21 Zinn 阅读(183) 评论(0) 推荐(0)
摘要:题目:权限题! 写了一下,但提交不了,先放着吧。 代码如下: 阅读全文
posted @ 2018-05-16 23:57 Zinn 阅读(433) 评论(0) 推荐(0)
摘要:题目:http://poj.org/problem?id=1830 根据题意,构造出n元方程组: a(1,1)x1 ^ a(1,2)x2 ^ a(1,3)x3 ... a(1,n)xn = st1 ^ ed1 a(2,1)x1 ...... = st2 ^ ed2 ...... 其中a(x,y)表示 阅读全文
posted @ 2018-05-16 22:45 Zinn 阅读(220) 评论(0) 推荐(0)
摘要:题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2004 求方案数,想到DP; 因为两个站间距离<=p,所以每p个站中所有车一定都会停靠至少一次,借此设计状态为p个站的停靠状态; 状压一下,1表示有车,0表示没有车,每个状态只有k个1; 这样就 阅读全文
posted @ 2018-05-15 23:54 Zinn 阅读(212) 评论(0) 推荐(0)
摘要:题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2875 矩阵快速幂,把x和c分开求,最后加上即可; 为防止爆long long,要用快速乘。 代码如下: 阅读全文
posted @ 2018-05-15 22:44 Zinn 阅读(182) 评论(0) 推荐(0)
摘要:题目:https://www.luogu.org/problemnew/show/P3391 主要练习翻转操作; 有好几个地方的顺序写反了,调了好久好久... 整体+1,就可以在翻转时使用左端点-1和右端点+1了; 节点的val是在原数列中的位置,节点所在的树中位置是现在数列的顺序; 所以输出就是中 阅读全文
posted @ 2018-05-14 00:36 Zinn 阅读(185) 评论(0) 推荐(0)
摘要:用map构建映射关系可以用来离散化,这里记录一下用法; 插入:将要插入的两个值组成pair,用insert插入map中; 查找:定义iterator,赋成find返回的迭代器,如果没有找到则=mp.end(),否则可以用->指向要取出的值,此时得到的就是定义类型了; 其实就是一些语法,见代码即可。 阅读全文
posted @ 2018-05-04 13:43 Zinn 阅读(564) 评论(0) 推荐(0)
摘要:题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1013 似乎是很明显的高斯消元; 第一次写高斯消元。 代码如下: 阅读全文
posted @ 2018-05-02 21:24 Zinn 阅读(170) 评论(0) 推荐(0)
摘要:题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2257 可以知道最终能够导出的燃料一定是瓶子容量的gcd的倍数,所以此题转化为求n个数中k个数的最大gcd; 暴力枚举一下,放进优先队列里,取最大的、个数>=k个的因数即可。 代码如下: 阅读全文
posted @ 2018-05-02 19:45 Zinn 阅读(155) 评论(0) 推荐(0)
摘要:题目:http://poj.org/problem?id=3070 用矩阵快速幂加速递推。 代码如下: 阅读全文
posted @ 2018-05-02 18:56 Zinn 阅读(195) 评论(0) 推荐(0)
摘要:题目:https://www.luogu.org/problemnew/show/P3369 Treap模板。 代码如下: 阅读全文
posted @ 2018-05-01 18:28 Zinn 阅读(239) 评论(0) 推荐(0)