牛客第十场 F.Popping Balloons】的更多相关文章

第一维直接遍历 第二维用线段树维护每个最左端可以得到的贡献 在线段树上每次删除一个点会影响到 X   X-R   X-2*R  3个值 最多操作1e5次 复杂度 6*n*logn(删了还要加回来 #include<bits/stdc++.h> using namespace std; ; int num[MAXN]; int number[MAXN]; struct Seg_Tre { int l, r; int w; } tree[MAXN << ]; inline void p…
题意: 给定一个稀疏矩阵,里面有若干个气球,让你横着开三枪,竖着开三枪,问最多能打爆多少气球,要求相同方向,相邻两枪必须间隔r. 题解: 横向记录每列有多少个气球,分别在哪行上. 然后把这个数据改造成以此点为左端点,此列,以及此行右r列,以及右2r列的信息. 纵向记录每行有多少个气球. 然后将此数据改造成以此点为下端点,此行,上r行,上2r行的信息. 将每行有多少个气球用线段树维护. 枚举竖着开枪的左端点,在线段树上删去那些竖着打爆的气球,然后询问线段树根节点,树上叶节点权值最大为几,就是横着三…
由于其中的2操作非常多,我们就需要将其快速的更改,就会用到组合数的东西 其实自己手写一下就可以发现对于一个点增加的值在经过不断地前缀和累加过程中对于一点的贡献满足杨辉三角 所以我们就需要记录一下其中的2操作数,在线操作 一点(i,j)在进行t次操作后对于(t,y)的贡献为C(t-i+y-j-1,t-i-1); 对于查询时我们就需要将当前的t+1进行查询,就可以就可以快速知道该点对于区间内的所有值的贡献 #include<bits/stdc++.h> using namespace std; ;…
卧槽我感觉写的是对的,但是就是样例都过不了...留坑 #include<iostream> #include<stdio.h> #include<string.h> #include<algorithm> #define LL long long using namespace std; ; struct node{ int h,w; }p[maxx]; LL dp[maxx][]; LL sums[maxx]; LL sumw[maxx]; LL que[…
链接:https://ac.nowcoder.com/acm/contest/392/F来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 32768K,其他语言65536K 64bit IO Format: %lld 题目描述 因为上次在月月面前丢人了,所以华华决定开始学信息学.十分钟后,他就开始学树状数组了.这是一道树状数组的入门题: 给定一个长度为N的序列A,所有元素初值为0.接下来有M次操作或询问: 操作:输入格式:1 D K,将ADAD加上K. 询问:输入格式…
链接:https://www.nowcoder.com/acm/contest/156/F 来源:牛客网 题目描述 题目背景编不下去了 托米有一棵有根树 T, 树根为1,每轮他会在剩下的子树中等概率一个点 u, 砍掉 u 的子树 (包含 u),如果树上的点都被砍光了,游戏结束. 求出这个游戏进行的期望轮数,可以证明这个数一定是有理数,设他为 , 你需要告诉他一个整数 x 满足 输入描述: 第一行输入一个数 n, 表示 T 的点数,下面 n- 行给出了 T 的每条边 输出描述: 一行一个整数表示答…
链接:https://www.nowcoder.com/acm/contest/85/F来源:牛客网 题目描述 Etéreo 拿出家里的许多的立方体积木,堆成了一个三维空间中的模型.既然你高考选了技术, 那想必你一定想知道,这个模型的三视图是什么吧!  图中, 轴. 轴和  轴的方向已经标明.现在规定,图中的红色面为主视面,蓝色面为右视面(注意输出中应为左视而非右视),黄色面为俯视面.具体方向可以观察样例.  输入描述: 第一行四个数 ,表示该三维空间大小为 ,且有 个立方体. 接下去 行,每行…
链接:https://www.nowcoder.com/acm/contest/87/F 来源:牛客网 题目描述 Cwbc想测试一下他的加密协议,以便防止其他人偷看他给XHRlyb的信. Cwbc提出了这样一个问题:在区间[a,b]和区间[c,d]中分别等概率随机选择一个整数,两者异或之后等于0的概率是多少? XHRlyb 一眼就看出了这个题目的答案,但她想让你计算一下这个概率.为了防止精度误差,你只需要输出一个形如a/b的最简分数.特别的,如果概率为0,你需要输出0/. 聪明的你在仔细阅读题目…
F.三视图   链接:https://www.nowcoder.com/acm/contest/85/F来源:牛客网     这个题自己想一下三维的,正视图和左视图中y轴为行数,x轴和z轴是列数,因为中间有一列输出空格,初始化的时候就要初始化为空格,什么都不写是不对的. 俯视图中,就是z轴为行数,x轴为列数.想一下就可以了.   代码: 1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 #incl…
链接:https://www.nowcoder.com/acm/contest/181/F来源:牛客网 题目描述 给出一个长度为n的序列,你需要计算出所有长度为k的子序列中,除最大最小数之外所有数的乘积相乘的结果 输入描述: 第一行一个整数T,表示数据组数.对于每组数据,第一行两个整数N,k,含义如题所示 接下来一行N个整数,表示给出的序列 保证序列内的数互不相同 输出描述: 对于每组数据,输出一个整数表示答案,对 取模每组数据之间以换行分割 输入例子: 3 4 3 5 3 1 4 5 4 3…