test20181219 连续段的期望】的更多相关文章

题意 连续段的期望 [问题描述] 小N最近学习了位运算,她发现2个数xor之后数的大小可能变大也可能变小,and之后都不会变大,or之后不会变小.于是她想算出以下的期望值:现在有 N个数排成一排,如果她随意选择一对l,r并将下标在l和r中间(包括l,r)的数(xor,and,or)之后,期望得到的值是多少呢?取出每一对l,r 的概率都是相等的.小G认为这太easy了,容易被你们水过去,因此你需要告诉他所有选择情况下,(xor,and,or)值的和. [输入格式] 第一行1个正整数N. 第二行N个…
链接:https://www.nowcoder.com/acm/contest/82/B来源:牛客网 时间限制:C/C++ 7秒,其他语言14秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 给你一个长为n的序列a和一个常数k 有m次询问,每次查询一个区间[l,r]内所有数最少分成多少个连续段,使得每段的和都 <= k 如果这一次查询无解,输出"Chtholly" 输入描述: 第一行三个数n,m,k第二行n个数…
题目描述 给你一个长为n的序列a和一个常数k 有m次询问,每次查询一个区间[l,r]内所有数最少分成多少个连续段,使得每段的和都 <= k 如果这一次查询无解,输出"Chtholly" 输入描述: 第一行三个数n,m,k第二行n个数表示这个序列a之后m行,每行给出两个数l r表示一次询问 输出描述: 输出m行,每行一个整数,表示答案 输入 5 5 7 2 3 2 3 4 3 3 4 4 5 5 1 5 2 4 输出 1 1 1 2 2 sol:初看以为是线段树题,但是肯定会被卡.…
链接:https://ac.nowcoder.com/acm/contest/82/B来源:牛客网 区间的连续段 时间限制:C/C++ 7秒,其他语言14秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 给你一个长为n的序列a和一个常数k 有m次询问,每次查询一个区间[l,r]内所有数最少分成多少个连续段,使得每段的和都 <= k 如果这一次查询无解,输出"Chtholly" 输入描述: 第一行三个数n,m,k…
题目链接 点我跳转 题目大意 给定一个长度为 \(N\) 的序列 \(A\) 和一个常数 \(K\) 有 \(M\) 次询问 每次询问查询一个区间 \([L , R]\) 内所有数最少分成多少个连续段 使得每段的和都 \(<= K\) ,若无解则输出 "\(Chtholly\)" 解题思路 简单回忆一下倍增求 \(LCA\) 思想: \(f[i][j]\) 表示以 \(i\) 为起点,往上跳 \(i + 2^j\) 步后得到的祖先 因为往上跳 \(2^j\) 等价于先往上跳 \(…
https://www.luogu.org/problemnew/show/P2486 值的一看https://www.cnblogs.com/Tony-Double-Sky/p/9283262.html #include<bits/stdc++.h> using namespace std; ; vector<int>G[maxn]; int n , q ,cnt; int siz[maxn] , wson[maxn],dep[maxn],fa[maxn],top[maxn],p…
题目大意 对于一个长度为 \(n\) 的排列 \(p\),我们称一个区间 \([l,r]\) 是连续的当且仅当 \((\max_{l\leq i\leq r}a_i)-(\min_{l\leq i\leq r}a_i)=r-l\). 对于两个排列 \(p_1,p_2\),我们称这两个排列是等价的,当且仅当他们的长度相同且连续区间的集合相同. 给你 \(n\),对于 \(1\leq i\leq n\),所有求 \(i\) 阶排列形成的等价类个数对 \(p\) 取模的值. \(n\leq 10000…
题目描述 珂朵莉给你一个有根树,求有多少个子树满足其内部节点编号在值域上连续 一些数在值域上连续的意思即其在值域上构成一个连续的区间 输入描述: 第一行有一个整数n,表示树的节点数.接下来n–1行,每行两个整数x,y,表示存在一条从x到y的有向边.输入保证是一棵有根树. 输出描述: 输出一个数表示答案 示例1 输入 5 2 3 2 1 2 4 4 5 输出 5 说明 节点1子树中编号为1,值域连续节点3子树中编号为3,值域连续节点5子树中编号为5,值域连续节点4子树中编号为4,5,值域连续节点2…
题目描述:https://www.cnblogs.com/problems/p/P1112.html 题目链接:http://codedecision.com/problem/1112 线段树区间操作,每一个线段对应的点包含三个信息: \(l\):表示这个区间最左边的点的数值: \(r\):表示这个区间最右边的点的数值: \(cnt\):表示这个区间有多少个数值段. 合并的时候: 根节点的 \(l\) 值等于左儿子节点的 \(l\) 值: 根节点的 \(r\) 值等于右儿子节点的 \(r\) 值…
题目描述 给你一个长度为n的数组 \(a_1, a_2, \dots a_n\) . 一开始这n个元素都为0. 然后有m次操作,每次操作有两种操作类型: update x y a:将区间 \([x,y]\) 范围内的元素都置为 a: query x y:询问区间 \([x,y]\) 范围内有多少不同的数据段. 举个例子,如果一个区间内有如下的数 \(3,3,2,2,2,1\) ,那么它有3段数据段,分别是 \(3,3\),\(2,2,2\) 和 \(1\) . 输入格式 输入的第一行包含两个整数…