2018年10月31日

test20181031 简单棋盘问题

该文被密码保护。 阅读全文

posted @ 2018-10-31 18:40 autoint 阅读(4) 评论(0) 推荐(0) 编辑

test20181031 单词

该文被密码保护。 阅读全文

posted @ 2018-10-31 18:28 autoint 阅读(3) 评论(0) 推荐(0) 编辑

2018年10月30日

test20181030 下标

只有注册用户登录后才能阅读该文。 阅读全文

posted @ 2018-10-30 22:44 autoint 阅读(6) 评论(0) 推荐(0) 编辑

test20181030 维修机器人

该文被密码保护。 阅读全文

posted @ 2018-10-30 18:13 autoint 阅读(6) 评论(0) 推荐(0) 编辑

test20181030 取球问题

该文被密码保护。 阅读全文

posted @ 2018-10-30 18:05 autoint 阅读(3) 评论(0) 推荐(0) 编辑

test20181029 帽子戏法

该文被密码保护。 阅读全文

posted @ 2018-10-30 11:29 autoint 阅读(2) 评论(0) 推荐(0) 编辑

2018年10月29日

test20181029 宝藏

摘要: 题意 分析 考场做法 一眼看出是支持换根的树形dp。 用$f(x,0/1)$表示x及其子树中,从x出发,不一定/一定回到x的最大收益。 然后子树很好做。 换根的时候,我先计算后还原,需要考虑很多,调了很久。 后来知道可以用up,down状态转移,会好写一些,但要考虑得跟我先前打的差不多。 cpp i 阅读全文

posted @ 2018-10-29 17:59 autoint 阅读(117) 评论(0) 推荐(0) 编辑

2018年10月24日

test20181024 zi

摘要: 题意 分析 这种题一般是推公式,发现必须求得的量,然后定义函数记忆化。 然后那些函数里面又是递归处理,合并。 代码 为了不爆空间,用map存记忆化内容。 cpp include using namespace std; define gc c=getchar() define r(x) read(x 阅读全文

posted @ 2018-10-24 22:08 autoint 阅读(106) 评论(0) 推荐(0) 编辑

test20181024 hao

摘要: 题意 分析 考场10分 直接$O(nm)$模拟即可。 标解 为何只有10分呢? 是因为这题有潜规则。 输入中会出现大于等于3个相同的子串,并且如果AAABBCCC中间插一个B进去,原串变为AAA。 还有就是原始串会有空串。(我不知道祖玛游戏没有珠子还要怎么玩。) 输入数据规模只有$10^3$,可以说 阅读全文

posted @ 2018-10-24 19:15 autoint 阅读(156) 评论(0) 推荐(0) 编辑

test20181024 nan 和 test20180919 递归问题

摘要: 一道数列题 阅读全文

posted @ 2018-10-24 18:54 autoint 阅读(173) 评论(0) 推荐(0) 编辑

test20181024 kun

摘要: 题意 分析 考场做法 任意状态只有两种决策,进栈或出栈。 由于元素互不相同,所以选择的关键在于栈顶元素是否在它和带插入元素组成的集合中是最大的。 用stack和set维护。时间复杂度$O(n \log n)$ 阅读全文

posted @ 2018-10-24 18:36 autoint 阅读(142) 评论(0) 推荐(0) 编辑

2018年10月23日

test20181020 B君的第二题

摘要: B君的第二题 分析 题目就是让你求文本框与s匹配到了哪个位置。 考场70分 一看就是裸的kmp,直接打上去。 cpp const int MAXN=1e5+7; vectora[MAXN]; int d[MAXN]; const int CHARSET=26; struct Trie { int s 阅读全文

posted @ 2018-10-23 11:59 autoint 阅读(189) 评论(0) 推荐(0) 编辑

test20181020 B君的第一题

摘要: 题意 分析 二次剩余问题。 x,y相当于二次方程 $$ x^2 bx+c=0 \mod{p} $$ 的两根。 摸意义下的二次方程仍然考虑判别式$\Delta=b^2 4c$。 它能开根的条件是$\Delta=0$或$\Delta^{\frac{p 1}{2}}=1$ 若能开根,则根为$\Delta^ 阅读全文

posted @ 2018-10-23 11:07 autoint 阅读(307) 评论(0) 推荐(0) 编辑

2018年10月21日

test20181015 B 君的第三题

摘要: 题意 B 君的第三题(zhengzhou) 题目描述 让你在战争和耻辱中做一块选择,你选择耻辱,可你将来还得进行战争。 在平面上有n 个整点(横纵坐标都是整数) B 君想找到一个整点,使得这个点,到所有点的距离之和最小。 两个点的距离定义为从一个点到到另一个点的最小步数。 其中每步可以走向相邻8 个 阅读全文

posted @ 2018-10-21 17:23 autoint 阅读(301) 评论(0) 推荐(0) 编辑

test20181018 B君的第三题

摘要: 题意 B 君的第三题(shenyang) 题目描述 客似云来,万里无云 B 君得到了一个数组$\{a_1,a_2,\dots,a_n\}$。 B 君想通过修改让数组中个每对数都互质。 每次使一个数+1 或者 1 的代价是1。 不能将$a_i$ 修改为0 或者负数。 问至少多少代价才可以让所有数两两互 阅读全文

posted @ 2018-10-21 16:10 autoint 阅读(238) 评论(0) 推荐(0) 编辑

test20181019 B君的第三题

摘要: 题意 B 君的第三题(urumqi) 题目描述 风雨如晦,鸡鸣不已。 B 君最近在研究自己的学长都在做什么工作,每个学长属于一个公司。 B 君会获得一些信息,比如x 和y 在相同公司,x 和y 在不同公司。 如果当前信息和之前记住的所有信息都不矛盾,B 君会记住这条信息,否则B 君会指出矛盾。 你需 阅读全文

posted @ 2018-10-21 15:22 autoint 阅读(204) 评论(0) 推荐(0) 编辑

test20181021 快速排序

摘要: 题意 对于100%的数据,$n,m \leq 10^5$ 分析 考场上打挂了。 最大值就是后半部分和减前半部分和。 最小是就是奇偶相减。 方案数类似进出栈序,就是catalan数 线段树维护即可,时间复杂度$O(n \log n+m \log n)$ 代码 阅读全文

posted @ 2018-10-21 13:03 autoint 阅读(142) 评论(0) 推荐(0) 编辑

2018年10月19日

test20181019 B君的第一题

摘要: 题意 分析 考场做法同标解。 画图模拟分析发现,无论操作顺序怎样,操作数的奇偶性是不变的。 所以等同求出,以每点为根的操作数奇偶性。 用$f(x)$表示x及其子树中的边,包括x到它fa的边,将他们全部置0的操作数。 $f(x)$与$\sum_{y \in son(x)}f(y)$的奇偶性有关,但是分 阅读全文

posted @ 2018-10-19 19:14 autoint 阅读(158) 评论(0) 推荐(0) 编辑

2018年10月18日

test20181018 B君的第一题

摘要: 题意 分析 考场爆零做法 考虑dp,用$f(i,j,0/1)$表示i及其子树中形成j个边连通块的方案数,其中i是否向外连边。 $O(n^3)$,转移方程太复杂就打挂了。 标解 首先说一下前排的L君的做法。 先算贡献乘以方案的乘积 点连通块的个数=断边的个数+1,所以乘积 $$ =\sum_{i=0} 阅读全文

posted @ 2018-10-18 19:33 autoint 阅读(205) 评论(0) 推荐(0) 编辑

2018年10月17日

test20181016 B君的第三题

摘要: 题意 B 君的第三题(haskell) 题目描述 大学四年,我为什么,为什么不好好读书,没找到和你一样的工作。 B 君某天看到了这样一个题,勾起了无穷的回忆。 输入$n, k$ 和一棵$n$ 个点的树,有边权,没有点权。两点$i, j$ 之间的距离$D(i, j)$ 定义为路径上的边权和。求 $$ 阅读全文

posted @ 2018-10-17 21:27 autoint 阅读(282) 评论(0) 推荐(0) 编辑

[NOI2011]道路修建

摘要: 题意 在 W 星球上有 n 个国家。为了各自国家的经济发展,他们决定在各个国家 之间建设双向道路使得国家之间连通。但是每个国家的国王都很吝啬,他们只愿 意修建恰好 n – 1 条双向道路。 每条道路的修建都要付出一定的费用,这个费用等于道路长度乘以道路两端 的国家个数之差的绝对值。例如,在下图中,虚 阅读全文

posted @ 2018-10-17 20:32 autoint 阅读(105) 评论(0) 推荐(0) 编辑

LG2831 愤怒的小鸟

摘要: 题意 分析 看n的范围只有18,考虑状压dp。 用$f(s)$表示过集合s中的点所需最小的抛物线数量。 然后枚举点对算抛物线,判断其他点是否在抛物线上来转移。 细节 判断能否构成抛物线只需要判断斜率关系,具体来说是 $$ \frac{y_i}{x_i} \frac{y_j y_i}{x_j x_i} 阅读全文

posted @ 2018-10-17 20:04 autoint 阅读(154) 评论(0) 推荐(0) 编辑

test20181016 B君的第二题

摘要: 题意 分析 考场暴力50分。 考虑bfs序,一个点的儿子节点的bfs序一定连续,所以对bfs序建线段树,努力打一下就行了。 时间复杂度$O(n \log n + m \log n)$ cpp include include include include include include includ 阅读全文

posted @ 2018-10-17 18:46 autoint 阅读(219) 评论(0) 推荐(0) 编辑

test20181017 B君的第一题

摘要: 题意 分析 考场做法 对p的幂打表发现,我们一定可以把x和y的二进制位从低到高依次调整成0。 具体而言,从0次幂开始每两个分为一组a,b,那么0,a,b,a+b组合中的一种可以将x,y的对应二进制位都调整成0。 然后模拟一下就行了。 时间复杂度$O(\log |x| + \log |y|)$ cpp 阅读全文

posted @ 2018-10-17 18:24 autoint 阅读(223) 评论(0) 推荐(0) 编辑

test20181017 B君的第二题

摘要: 题意 分析 考场50分 旁边的L君告诉我,求的就是非升子序列的个数,于是写了个树状数组。 但是$\mod{2333} 0$还需要组合数中没有2333的倍数,所以实际上只得了$a_i \leq 2333$的部分分,还好。 cpp include include include include incl 阅读全文

posted @ 2018-10-17 16:00 autoint 阅读(180) 评论(0) 推荐(0) 编辑

2018年10月16日

[AHOI2009]维护序列

摘要: 题意 老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成。 有长为N的数列,不妨设为a1,a2,…,aN 。有如下三种操作形式: (1)把数列中的一段数全部乘一个值; (2)把数列中的一段数全部加一个值; (3)询问数列中的一段数的和,由于答案可能很大,你只需输出这个数模P的值。 $n,m 阅读全文

posted @ 2018-10-16 18:58 autoint 阅读(147) 评论(0) 推荐(0) 编辑

test20181016 B君的第一题

摘要: 题意 分析 考场爆零做法 考虑位数少的一定更小,高位小的一定更少。 然后计算一定位数下不同数字的个数,然后从高到低依次确定数位。 特例:如果确定的高位的后缀出现了x,那么要把x调整到后缀去,这样一定更优。 然而这样做有问题,有重复的情况,譬如样例1的6666。 阅读全文

posted @ 2018-10-16 18:08 autoint 阅读(278) 评论(0) 推荐(0) 编辑

test20181015 B君的第二题

摘要: 题意 分析 考场85分 用multiset暴力,由于教练的机子飞快,有写priority_queue水过了的人。 cpp include include include include include include include include include include include i 阅读全文

posted @ 2018-10-16 08:06 autoint 阅读(196) 评论(0) 推荐(1) 编辑

2018年10月10日

[NOI2013]矩阵游戏

摘要: 题意 婷婷是个喜欢矩阵的小朋友,有一天她想用电脑生成一个巨大的n行m列的矩阵(你不用担心她如何存储)。她生成的这个矩阵满足一个神奇的性质:若用F[i][j]来表示矩阵中第i行第j列的元素,则F[i][j]满足下面的递推式: F[1][1]=1 F[i,j]=a F[i][j 1]+b (j!=1) 阅读全文

posted @ 2018-10-10 15:33 autoint 阅读(158) 评论(0) 推荐(0) 编辑

2018年10月7日

test20181007 wzoi

摘要: 题意 分析 考场40分 错误的Manacher+dp。 用$f(i)$表示$s_{1 \sim i}$的最长偶数回文覆盖长度,在Manacher的同时用刷表法转移,每次还要对$f(i 1)$取$\max$。 然而考虑这组数据: 0011011110 $f$算出来: 0,2,2,2,4,4,6,6,8 阅读全文

posted @ 2018-10-07 15:17 autoint 阅读(282) 评论(0) 推荐(0) 编辑

2018年10月6日

[NOI2012]随机数生成器

摘要: 题意 栋栋最近迷上了随机算法,而随机数是生成随机算法的基础。栋栋准备使用线性同余法(Linear Congruential Method)来生成一个随机数列,这种方法需要设置四个非负整数参数m,a,c,X[0],按照下面的公式生成出一系列随机数{Xn}: X[n+1]=(aX[n]+c) mod m 阅读全文

posted @ 2018-10-06 20:29 autoint 阅读(227) 评论(0) 推荐(0) 编辑

test20181006 投票

摘要: 题意 分析 考场30分 枚举大小为k的子集的算法终于用上了。 时间复杂度 $$O\left(\binom{n}{k} \cdot \binom {k}{\frac{k}{2}} \cdot k\right)$$ cpp include include include include include 阅读全文

posted @ 2018-10-06 15:59 autoint 阅读(195) 评论(0) 推荐(0) 编辑

test20181006 石头剪刀布

摘要: 题意 分析 考场做法同题解一样。 std代码。 我的代码。排序的时候我用的递推处理,跑得比std快。 cpp include include include include include include include include include include include include 阅读全文

posted @ 2018-10-06 14:53 autoint 阅读(192) 评论(0) 推荐(0) 编辑

LG2731 骑马修栅栏 Riding the Fences

摘要: 欧拉回路模板题 阅读全文

posted @ 2018-10-06 07:53 autoint 阅读(145) 评论(0) 推荐(0) 编辑

2018年10月5日

test20181005 迷宫 和 CF413E Maze 2D

摘要: 迷宫 分析 时间复杂度里的n,m写反了。 出题人很有举一反三的精神。 我的代码常数巨大,加了各种优化后开O3最慢点都要0.9s。 cpp const int INF=0x3f3f3f3f; const int MAXN=2e5+7; int n,m; int maze[6][MAXN]; struc 阅读全文

posted @ 2018-10-05 22:07 autoint 阅读(320) 评论(0) 推荐(0) 编辑

test20181005 序列

摘要: 题意 考场30分 维护差值,考虑每次移动的变更,当前2 n位置上的差加1,1位置上的差减n 1。 然后要求的是绝对值的和,用吉司机线段树维护最大最小值、次大次小值。 期望复杂度$O(n \log n)$ cpp include include include include include incl 阅读全文

posted @ 2018-10-05 17:29 autoint 阅读(134) 评论(0) 推荐(0) 编辑

2018年10月4日

test20181004 排列

摘要: 题意 分析 容斥公式的意义 选了原图中$x(x \geq i)$条边的方案,重复了$\binom{x}{i}$次。 有多加多减,所以就是那个式子。 具体而言,对选了x条原图中的边的方案,总共加减了 $$ \sum_{i=0}^{x} \binom{x}{i} \cdot ( 1)^{i}\\ = ( 阅读全文

posted @ 2018-10-04 21:25 autoint 阅读(128) 评论(0) 推荐(0) 编辑

test20181004 苹果树

摘要: 题意 大家的考场做法 对每个点维护子树所能达到的dfn最大值、最小值、次大值、次小值,然后就可以计算原树中每个点与父亲的连边对答案的贡献。 如果子树中没有边能脱离子树,断掉该边与任意一条新加的边都成立,答案就加m。 如果子树中只有1条边能脱离子树,只能断掉该边和那条能脱离子树的边,答案就加1。 如果 阅读全文

posted @ 2018-10-04 14:31 autoint 阅读(155) 评论(0) 推荐(0) 编辑

2018年9月28日

BZOJ2460,LG4570 [BJWC2011]元素

摘要: 维护异或和,利用线性基性质 阅读全文

posted @ 2018-09-28 10:39 autoint 阅读(129) 评论(0) 推荐(0) 编辑

2018年9月26日

test20180922 世界第一的猛汉王

摘要: 题意 分析 由于异色点必有连边,所以一个点的covered减去两个点共有的covered就是可存在的环数,十分巧妙。 cpp include using LL = long long; const int MAXN = 1e5 + 5; int n, m, D; std::pair p1[MAXN] 阅读全文

posted @ 2018-09-26 22:31 autoint 阅读(411) 评论(0) 推荐(0) 编辑

导航