首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
【JZOJ4925】【GDOI2017模拟12.18】稻草人
】的更多相关文章
【JZOJ4925】【GDOI2017模拟12.18】稻草人
题目描述 YLOI村有一片荒地,上面竖着N个稻草人,村民们每年多次在稻草人们的周围举行祭典. 有一次,YLOI村的村长听到了稻草人们的启示,计划在荒地中开垦一片田地.和启示中的一样,田地需要满足以下条件: 1.田地的形状是边平行于坐标轴的长方形: 2.左下角和右上角各有一个稻草人: 3.田地的内部(不包括边界)没有稻草人. 给出每个稻草人的坐标,请你求出有多少遵从启示的田地的个数 数据范围 1<=N<=2*10^5 0<=Xi<=10^9(1<=i<=N) 0<=…
jzoj4918. 【GDOI2017模拟12.9】最近公共祖先 (树链剖分+线段树)
题面 题解 首先,点变黑的过程是不可逆的,黑化了就再也洗不白了 其次,对于\(v\)的祖先\(rt\),\(rt\)能用来更新答案当且仅当\(sz_{rt}>sz_{x}\),其中\(sz\)表示子树中黑点的个数,\(x\)表示\(rt\)走到\(v\)的路径上的第二个节点 每一次染黑一个新的点\(u\)之后,我们要让它所有祖先的\(sz+1\),那么我们可以考虑树链剖分+线段树 再回过头来康康树链剖分的过程啊--我们跳着跳着跳到了\(u\),那么对于\([top[u],u]\)之间的点的\(s…
jzoj4915. 【GDOI2017模拟12.9】最长不下降子序列 (数列)
题面 题解 调了好几个小时啊--话说我考试的时候脑子里到底在想啥-- 首先,这个数列肯定是有循环节的,而且循环节的长度\(T\)不会超过\(D\) 那么就可以把数列分成三份,\(L+S+R\),其中\(L,R\)为左右两边剩下的,\(S\)为中间的循环数列.对于\(L\),算出\(pre_i\)表示最后一个数小于等于\(i\)的最长的子序列的长度,对于\(R\)算出\(suf_i\)表示最开始的一个数大于等于\(i\)的最长的子序列的长度.然后用中间出现过的每一个数以及\(pre\)和\(suf…
jzoj4916. 【GDOI2017模拟12.9】完全背包问题 (背包+最短路)
题面 题解 考场上蠢了--这么简单的东西都想不到-- 首先排序加去重. 先来考虑一下,形如 \[a_1x_1+a_2x_2+...a_nx_n=w,a_1<a_2<...<a_n,x_i\geq 0\] 的方程该怎么判断是否有解 首先,把两边都放到模\(a_1\)的意义下,就是 \[a_2x_2+...a_nx_n\equiv w\pmod{a_1}\] 然后是一个神仙的转化,我们设有\(a_1\)个点,分别代表\(0,1,...,a_1-1\),对于每一个点\(u\),都连出去\(n-…
【GDOI2017模拟12.9】最近公共祖先
题目 分析 首先,将这些节点按dfs序建一棵线段树. 因为按dfs序,所以在同一子树上的节点会放在线段树相邻的位置. 发现,对于一个位置x,它的权值只会对以x为根的子树造成影响. 当修改x时,用w[x]更新子树x的最大值, 接着从x向上跳,用w[fa[x]]更新子树fa[x]-子树x最大值, 因为当用w[fa[x]]来更新过子树fa[x]-子树x时,再用它更新就会没有意义,所以打个标记,不再更新.这样就最多只会更新n次. #include <cmath> #include <iostre…
[JZOJ4913] 【GDOI2017模拟12.3】告别
题目 描述 题目大意 给你两个排列AAA和BBB,每次随即选三个数进行轮换操作,问mmm次操作内使AAA变成BBB的概率. 思考历程 首先随便搞一下,就变成了AAA中每个数回归自己原位. 一眼望去,感觉nnn很小-- 最简单的想法是将每个情况都储存起来,然后搞出它们之间的转移情况. 然后发现这些状态是存不下的. 于是我就开始想有没有哪些状态是等价的. 然后我发现对于每个数字,可以简单地归为是否回归原位的两种情况.这样状态倒小了,可是又能怎么转移呢?mmm这么大,肯定打矩阵乘法.这么大的状态还是不…
【JZOJ4930】【NOIP2017提高组模拟12.18】C
题目描述 给出一个H的行和W列的网格.第i行第j列的状态是由一个字母的A[i][j]表示,如下: "." 此格为空. "o" 此格包含一个机器人. "E" 此格包含一个出口,保证出口在整个网格中有且只有一个 每次可以选择上,下,左,右之一的方向,将所有剩余的机器人向这个方向移动一个格子,如果一个机器人被移出了网格,那么这个机器人会爆炸,并立即消失.如果一个机器人移动到出口所在的格子,机器人将获救,并消失,最多有多少机器人获救. 数据范围 对于10…
【JZOJ4929】【NOIP2017提高组模拟12.18】B
题目描述 在两个n*m的网格上染色,每个网格中被染色的格子必须是一个四联通块(没有任何格子被染色也可以),四联通块是指所有染了色的格子可以通过网格的边联通,现在给出哪些格子在两个网格上都被染色了,保证网格的最外围一层不会在两个网格中同时被染色,即所有处于第x行第y列满足x=1或x=n或y=1或y=m的格子不会被在两个网格中同时被染色,请求出任意一种染色的方案,如果无解,请输出-1. 数据范围 对于100%的数据,n,m<=500 =w= 大胆猜想,构造: 1.奇数行第一个涂蓝色,其余涂蓝色: 2…
【JZOJ4928】【NOIP2017提高组模拟12.18】A
题目描述 数据范围 对于100%的数据,n<=100000,1<=A[i]<=5000 =w= Ans=∏1ai 代码 #include<iostream> #include<stdio.h> #include<string.h> #include<math.h> #include<algorithm> #define ll long long using namespace std; const char* fin="…
Sprint3(12.18)总结
Sprint3第三阶段 1.类名:软件工程-第三阶段 2.时间:至12.18 3.选题内容:web版-餐厅到店点餐系统 4.团队博客地址: http://www.cnblogs.com/queenjuan 团队GITHUB地址: https://github.com/Taolu1234/Taolu1234 5.队员信息 姓名 学号 个人博客链接 个人GITHUB链接 丘娟 201406114101 h…