2018 CCPC 湘潭邀请赛 & 2018 JSCPC
Problem A
Problem B
Problem C
这题用主席树轻松解决
可以二分答案,每次查询;也可以直接开个全局变量在主席树上二分;
时间复杂度$O(nlog^{2}n)$或$O(nlogn)$
Problem D
设$f[i][j]$为$j$个球分成$i$段的乘积
首先不管环,考虑这样一个链,黑白黑白黑白黑白
反正就是保证:黑白段数相同,首尾两段颜色不一样
但是他是一个环,也就是,首尾两个球的颜色可以相同,那我们把最后那段的最后一个球,放到第一的位置的前面,
然后把倒数第二个球,再放到最前面,直到最后那段只剩下一个球了,也就是说这一条链的答案 可以产生最后一段长度的贡献
那这条链对答案的贡献就是$s_{1} * s_{2} * s_{3} * ... * s_{i - 1} * s_{i} * s{i}$
也就是最后一段平方一下,其他都不变
于是就DP另一个东西,设$g[i][j]$为$j$个球分成$i$段, 最后那段要平方一下的所有方案的乘积和
最后枚举段数,乘法原理搞一下就好了。
DP的时候用滚动数组优化,处理询问的时候对询问离线。
时间复杂度$O(n^{2})$
Problem E
Problem F
Problem G
Problem H
Problem I
设$f1[i]$为以$a[i]$结尾的最长上升子序列
设$f2[i]$为以$a[i]$开头的最长上升子序列
忽略掉$0$
首先注意到一个事实,假设不考虑$0$,原序列的LIS长度为$L$,总有$f(x) = L$ 或 $f(x) = L + 1$
对于某个正整数$a[i]$,考虑他前面的最右边的某个$0$,考虑这个数之前的所有正整数$a[j]$
我们要找到这样一个$j$,满足以下条件:
$1、f1[j] + f2[i] = L$;
$2、a[j] + 1 < a[i]$;
$3、a[j]$要最小。
找到这样的$a[j]$之后,对于所有的满足$a[j] < k < a[i]$的$k$,有$f(k) = L + 1$。
枚举$a[i]$, 在$O(logn)$的时间内完成上面的事情,然后差分标记一下即可。
时间复杂度$O(nlogn)$
Problem J
Problem K
2018 CCPC 湘潭邀请赛 & 2018 JSCPC的更多相关文章
- 湘潭邀请赛 2018 I Longest Increasing Subsequence
题意: 给出一个长度为n的序列,序列中包含0.定义f(i)为把所有0变成i之后的Lis长度,求∑ni=1i⋅f(i). 题解: 设不考虑0的Lis长度为L,那么对于每个f(i),值为L或L+1. 预处 ...
- 湘潭邀请赛 2018 E From Tree to Graph
题意: 给出一棵树以及m,a,b,x0,y0.之后加m条边{(x1,LCA(x1,y1)),(x2,LCA(x2,y2))...(xm,LCA(xm,ym))}.定义z = f(0)^f(1)^... ...
- 湘潭邀请赛 2018 D Circular Coloring
题意: 给一个环,环上有n+m个点.给n个点染成B,m个点染成W.求所有染色情况的每段长度乘积之和. 题解: 染成B的段数和染成W的段数是一样的(因为是环). 第一段是可以移动的,例如BBWWW移动为 ...
- 2017 CCPC 湘潭邀请赛
都tm快一年了我还没补这套题……再不补怕是要留给退役后乐 Problem A 把$n * (n + 1)$的矩阵补成$(n + 1) * (n + 1)$的,然后高斯消元. Problem B 一看题 ...
- ccpc湘潭邀请赛 Partial Sum
选定最多m的区间,使区间和的绝对值最大.但是左右端点不能重复选取 首先涉及到区间和的问题,就应该想到用前缀和去优化 这里对前缀和排序 然后贪心的去选取最大.次大 (比赛的时候脑子堵的很,没想出来 可惜 ...
- 2018 CCPC网络赛
2018 CCPC网络赛 Buy and Resell 题目描述:有一种物品,在\(n\)个地点的价格为\(a_i\),现在一次经过这\(n\)个地点,在每个地点可以买一个这样的物品,也可以卖出一个物 ...
- 2018 CCPC 桂林游记
TYPE: Onsite Contest NAME: 2018 - CCPC - Guilin PLAT: HUSTOJ TIME: 2018/10/28 09:00-14:00 CST LOCA: ...
- 2018 CCPC 桂林站(upc复现赛)补题
2018 CCPC 桂林站(upc复现赛)补题 G.Greatest Common Divisor(思维) 求相邻数的差值的gcd,对gcd分解素因子,对所有的素因子做一次遍历,找出最小答案. 几个样 ...
- 2018 CCPC 吉林站 H Lovers
2018 CCPC 吉林站 H Lovers 传送门:https://www.spoj.com/problems/LIS2/en/ 题意: q次操作 1.将第l~r个数的左边和和右边都加上一个数d, ...
随机推荐
- 【Deep Learning】林轩田机器学习技法
这节课的题目是Deep learning,个人以为说的跟Deep learning比较浅,跟autoencoder和PCA这块内容比较紧密. 林介绍了deep learning近年来受到了很大的关注: ...
- Nuget的使用笔记-(使用nuget发布dll到www.nuget.org)
Nuget是神马东东? 来自nuget.org官方的介绍 ----------------------------------------------------------------------- ...
- GLIBCXX3.4.21 not find
在执行世界杯的二进制代码和安装keepaway中会遇到GLIBCXX3.4.21 not find的问题,其解决办法就是升级安装GCC. 一.首先查看当前gcc版本 $ strings /usr/li ...
- [Ceres]C++优化库
官网教程: http://ceres-solver.org/nnls_tutorial.html 定义了一个最小二乘法求解器 自动求导的功能
- JavaScript里面之dom操作
1.dom之选择元素 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
- linux中帮助参数 man whatis which info区别?
在linux终端,面对命令不知道怎么用,或不记得命令的拼写及参数时,我们需要求助于系统的帮助文档: linux系统内置的帮助文档很详细,通常能解决我们的问题,我们需要掌握如何正确的去使用它们: 在只记 ...
- HDU 3033 组合背包变形 I love sneakers!
I love sneakers! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tot ...
- P2857 [USACO06FEB]稳定奶牛分配Steady Cow Assignment
题目描述 Farmer John's N (1 <= N <= 1000) cows each reside in one of B (1 <= B <= 20) barns ...
- 区间(interval)
区间(interval) 题目描述 zht有一个长度为n的排列P,现在zht想知道,有多少个由连续整数组成的区间[l,r][l,r]可以由PP中的两个区间[a,b],[c,d]拼出,其中1≤a≤b&l ...
- MATLAB矩阵操作大全
转载自:http://blog.csdn.net/dengjianqiang2011/article/details/8753807 MATLAB矩阵操作大全 一.矩阵的表示 在MATLAB中创建矩阵 ...