
思维题
ylsoi
这个作者很懒,什么都没留下…
展开
-
[CF1013D]Chemical table——并查集找连通块
题目大意:给定一个n∗mn∗mn*m的矩阵(可以理解为元素周期表),当三个元素形成一个矩形的三个角的时候,另外一个角的元素便可以自动生成,现在有qqq个元素并且已知他们的位置,求把这个矩阵都填满的情况下最小需要额外添加几种新的元素。思路:表示这个题目考试的时候好多人都A了但是我怎么想都想不出来,后来看了别人的代码我才知道怎么做。 来考虑在什么情况下元素才会连续生成,即在若干个方块...原创 2018-07-31 22:19:34 · 367 阅读 · 0 评论 -
[bzoj4010][HNOI2015]菜肴制作——拓扑排序
题目大意:给定一个有向图,求拓扑序使得每一个数的位置序列的字典序最小。思路:要求小的数尽量靠前,考虑从后填数,也就是按照反图的拓扑序来从后往前填,既然小的数尽量往前,那么最后一个位置就尽量要大的数,依次类推可得最终的答案应该满足反过来的序列字典序最大。#include<bits/stdc++.h> #define REP(i,a,b) for(int i=a,i##_end...原创 2018-12-05 19:29:49 · 169 阅读 · 0 评论 -
[bzoj5285][Hnoi2018]寻宝游戏——思维+排序
题目大意:给定n个m位的二进制数,在每一个数前面补上一个∨\lor∨或∧\land∧,最前面补上一个0,每次询问最后运算结果为r的方案数为多少。思路 :感觉MYY出的题就是不一样。位数很多,所以应该要想到对于每一位单独考虑。对于单独每一位,考虑每一个运算符这一位上的影响,不难发现总共有四种情况:∧1,∧0,∨1,∨0\land 1, \land 0, \lor 1, \lor 0∧1,∧...原创 2018-12-05 19:21:27 · 335 阅读 · 0 评论 -
[arc081] F - Flip and Rectangles——思维题+单调栈
题目大意:给定一个n×mn\times mn×m的01矩形,每次可以翻转一行或者翻转一列。求翻转若干次之后的最大全1子矩形。思路:首先我们要知道一个结论:如果一个子矩形可以被翻转成为全1矩形,那么它内部的每一个2×22\times 22×2的子矩形的1的个数为偶数。如果存在一个2×22\times 22×2的子矩形有奇数个1,那么无论怎么操作都还是奇数。如果所有的2×22\times ...原创 2018-11-06 20:31:47 · 276 阅读 · 0 评论 -
[bzoj2803][Poi2012]Prefixuffix——思维+复杂度分析+字符串哈希
题目大意:对于两个串S1、S2,如果能够将S1的一个后缀移动到开头后变成S2,就称S1和S2循环相同。例如串ababba和串abbaab是循环相同的。给出一个长度为n的串S,求满足下面条件的最大的L:L<=n/2S的L前缀和S的L后缀是循环相同的。思路:既然是循环同构,那么前一段和后一段一定可以表示为这样的形式:s1+s2,s2+s1。于是我们去枚举这个断点,然后判断两边是...原创 2018-09-28 21:01:35 · 350 阅读 · 0 评论 -
[bzoj2638]黑白染色——思维题+最短路
题目大意:你有一个n*m的矩形,一开始所有格子都是白色,然后给出一个目标状态的矩形,有的地方是白色,有的地方是黑色,你每次可以选择一个连通块(四连通块,且不要求颜色一样)进行染色操作(染成白色或者黑色)。问最少操作次数。思路:可以证明每一次操作的范围都是上一次操作的子集,并且颜色与上一次相反(但是我不会证)。于是我们可以把黑色连通块和白色连通块之间互相连边,这样就形成了一个图,我们枚举最后...原创 2018-10-04 16:55:14 · 1000 阅读 · 0 评论 -
[bzoj1098][POI2007]办公楼biu——复杂度分析+广搜
题目大意:FGD开办了一家电话公司。他雇用了N个职员,给了每个职员一部手机。每个职员的手机里都存储有一些同事的电话号码。由于FGD的公司规模不断扩大,旧的办公楼已经显得十分狭窄,FGD决定将公司迁至一些新的办公楼。FGD希望职员被安置在尽量多的办公楼当中,这样对于每个职员来说都会有一个相对更好的工作环境。但是,为了联系方便起见,如果两个职员被安置在两个不同的办公楼之内,他们必须拥有彼此的电话号码...原创 2018-09-18 20:56:56 · 252 阅读 · 0 评论 -
[loj2818][eJOI2018]循环排序——思维题
题目大意:You are given an array of nnn positive integers a1,a2,…,ana1,a2,…,ana_1, a_2, \dots, a_n. You can perform the following operation any number of times: select several distinct indices i1,i2,…,ik...原创 2018-08-24 15:36:33 · 704 阅读 · 0 评论 -
[AGC003E]Sequential operations on Sequence——思维题
题目大意:给定一个1-n的序列,每一次操作把序列无限延长之后取前面的bi位,求最后每个数字出现的次数。思路:首先观察到要是bi>bi+1,那么bi就是没有意义的,这样以后整个操作序列就变成了单调递增的。 考虑从反面推出每一段序列在最后的序列中的出现的次数。具体地,对于每一段序列,我们要把它划分为若干个之前的序列。 对于倒数第一次操作之后的序列它在最后的序列中出现了一次,倒...原创 2018-08-16 19:27:13 · 273 阅读 · 0 评论 -
[loj6208]树上询问——线段树
题目大意:有一棵 nnn节点的树,根为 111 号节点。每个节点有两个权值 ki,tiki,tik_i, t_i,初始值均为 000。 给出三种操作: Add(x,d)Add(x,d)\mathrm{Add}( x , d )操作:将xxx到根的路径上所有点的ki←ki+dki←ki+dk_i\leftarrow k_i + d Mul(x,d)Mul(x,d)\mathrm{Mul...原创 2018-08-02 13:27:13 · 577 阅读 · 0 评论 -
NOI2013 树的计数
NOI2013 树的计数给定一个dfs序和bfs序,求解符合这两个条件的所有树的平均树高。思路如果我们能够给bfs序中每一段区间分层,然后再去对应dfs序,不难发现可以唯一确定一棵树,即在dfs的过程中,前后两个节点的关系可以按照层数来判断,分为儿子或者是某一层祖先的另外一个儿子。而给bfs序分层的时候我们需要满足一些限制:bfs序中同一层在dfs中访问顺序必须严格按照bfs的访问顺序...原创 2019-06-18 19:00:10 · 540 阅读 · 0 评论