BNU2017校赛
A(模拟)
题意:求一个特殊图的最大流
分析:画画图发现就是for循环扫一遍
B(LCA)
题意:有n个点组成的树,有q个询问,每个询问(A,B,C),学生从B点走最短路径走到C点,再从C点走到根节点1,问老师从A点出发,能否拦截到学生。
分析:
设u=LCA(A,lCA(B,C))
那么如果A->u的距离小于从B出发走到u的距离,那么就能拦截
如果距离大于,那么不能拦截
如果距离等于,要判断此点是否在根节点,如果在根节点,那么要判断老师和学生是走一条链上来的还是两条链上来,如果是走一条链上来就能拦截住,否则不能拦截住;具体判断方法就是求下LCA(A,C)
C(模拟)
=w=
D(竞赛图性质)
题意:所有由n个点的竞赛图中,问最长链分别为1、2、3....n的有多少种
分析:
暴力构造竞赛图,暴力求最长链
然后会得到一个神奇的结论,竞赛图中必存在哈密顿路,最长链就是点数
E(三分/数学)
题意:给你一个三角形,以每个顶点为圆心画圆,要求这三个圆互不相交(但不能内含),而且圆的半径可以为0,求这三个圆的面积和的最大值
分析:
先肯定猜三分,然后输出方案会发现必有一个是0……
然后就只要考虑两个圆相切的情况
F(计算几何)
待填坑
G(状压dp)
待填坑
H(splay+bit)
题意:n个人有各自的编号,也有各自的排名(排名1~n),排名>0.6*n的人得到安慰奖
有两种操作:
op1:给定x,y,把编号为x的人的排名提升到第y名,原本排名>=y的顺次降低一个排名
op2:给定x,y,问编号在x~y范围的人中有多少人得到安慰奖
分析:
如果某个人得到安慰奖,那就用1表示,否则用0表示,那么x~y内得到安慰奖的人数就可以用区间和来表示
注意到一次操作1,顶多改变2个人的01值,所以这完全可以用树状数组来维护
至于排名,则可以用splay来维护
所以splay+bit就可以了
这题由于数据比较小,分块其实跑得更快
分块按照排名分块,每次提排名操作必然会导致块的大小的不平衡,所以有个好方法就是每隔根号n次操作,重新构一次块
I(网络流)
待填坑
J(kmp)
题意:给定一个字符串S(|S|<=2000),考虑它的任意一个前缀pre[i],任意一个后缀suf[j],找到pre[i]的一个最长后缀B正好是suf[j]的前缀,那么pre[i]=A+B,suf[j]=B+C,定义这样的f(i,j)=|A|*|B|^2*|C|,求所有f(i,j)的异或和
分析:
枚举每一个后缀,再枚举前缀,快速求得|B|就能解决问题
然后我们发现,这样的一位一位去枚举前缀的过程,实际上可以用这个后缀和原串S做kmp来代替
所以就是提前预处理出所有后缀的next[],然后枚举后缀和原串做kmp,就可以得到每对(i,j)的值了,把他们异或就行了
K(模拟)
QvQ
BNU2017校赛的更多相关文章
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
- SCNU省选校赛第二场B题题解
今晚的校赛又告一段落啦,终于"开斋"了! AC了两题,还算是满意的,英语还是硬伤. 来看题目吧! B. Array time limit per test 2 seconds me ...
- 2014上半年acm总结(1)(入门+校赛)
大一下学期才开始了acm,不得不说有一点迟,但是acm确实使我的生活充实了很多,,不至于像以前一样经常没事干= = 上学期的颓废使我的c语言学的渣的一笔..靠考前突击才基本掌握了语法 寒假突然醒悟, ...
- 2017CUIT校赛-线上赛
2017Pwnhub杯-CUIT校赛 这是CUIT第十三届校赛啦,也是我参加的第一次校赛. 在被虐到崩溃的过程中也学到了一些东西. 这次比赛是从5.27早上十点打到5.28晚上十点,共36小时,中间睡 ...
- HZNU第十二届校赛赛后补题
愉快的校赛翻皮水! 题解 A 温暖的签到,注意用gets #include <map> #include <set> #include <ctime> #inclu ...
- 校赛F
问题描述 例如对于数列[1 2 3 4 5 6],排序后变为[6 1 5 2 4 3].换句话说,对于一个有序递增的序列a1, a2, a3, ……, an,排序后为an, a1, an-1, a2, ...
- PKU2018校赛 H题 Safe Upper Bound
http://poj.openjudge.cn/practice/C18H 题目 算平均数用到公式\[\bar{x}=\frac{x_1+x_2+x_3+\cdots+x_n}{n}\] 但如果用in ...
- 【魔改】hdu6325 多校赛3G xy排序凸包+llvector模板
凸包算法前的预处理,可以极角排序,也可以按X,Y轴排序, 极角排序需要找到角落里的一个点,Xy轴排序要跑两遍凸包 而本题的要求只要一个上半凸包,并且有X轴从小到大以及字典序限制,完全符合xy排序,直接 ...
- 牛客网多校赛第9场 E-Music Game【概率期望】【逆元】
链接:https://www.nowcoder.com/acm/contest/147/E 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524 ...
随机推荐
- bootstrap框架栅格系统使用
使用的前端框架 bootstrap框架 Bootstrap是一个响应式的框架 我们在使用的时候主要使用的是它的网格系统, 1.bootstrap布局 布局容器:.container(用于固定宽度并支 ...
- JData 整合ArtTemplate的前端框架
因为项目需要和自己的兴趣,几个月前结合模板解析神速的ArtTemplate,自己写了个框架取名JData,多多指教啊---因为一直没时间写文档,为了能够更方便地使用和避免我把代码忘了,今天抽空把文档写 ...
- 黑马程序员----java基础:String与StringBuffer及基本数据类型包装类
------- android培训.java培训.期待与您交流! ---------- java中一些基础类比如String.StringBuffer和基本数据类型包装类都是非常常见且使用非常频繁的类 ...
- Win7系统32位和64位的区别
Win7系统32位和64位的区别已经是一个老话题了,可是还是有很多朋友不明白.这两者到底有什么区别呢?下面本文与大家通俗的介绍下Win7系统32位和64位的区别,其他一些深入的理论讲述,大家可以看看文 ...
- SweetAlert如何实现点击Confirm之后自动关闭
swal({ title: "Are you sure?", text: "You will not be able to recover this imaginary ...
- python爬虫学习:分布式抓取
前面的文章都是基于在单机操作,正常情况下,一台机器无论配置多么高,线程开得再多,也总会有一个上限,或者说成本过于巨大.因此,本文将提及分布式的爬虫,让爬虫的效率提高得更快. 构建分布式爬虫首先需要有多 ...
- Adobe Dreamweaver CC 2014 代码颜色目录 dw
他的颜色代码配置文件,不在安装目录下,这让我好找啊~ C:\Users\Administrator\AppData\Roaming\Adobe\Dreamweaver CC 2014\zh_CN\Co ...
- CAD参数绘制mcdbsolid对象(com接口)
C#中实现代码说明: private void DrawSolid() { //绘McDbSolid对象 axMxDrawX1.AddLinetype("MLineType1", ...
- CAD使用GetxDataLong读数据(com接口)
主要用到函数说明: MxDrawEntity::GetxDataLong2 读取一个Long扩展数据,详细说明如下: 参数 说明 [in] LONG lItem 该值所在位置 [out, retval ...
- D2. Toy Train
D2. Toy Train time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...