A tow-day exam
D1
T1l
\(des:\)
给出一棵树,判断树上两条路径是否相交
\(sol:\)
判断其中一条路径的两个端点以及两端点的 \(lca\) 是否存在于另一条链上
由于这是一棵树,任一点为根后这样判断一定是可行的,不存在两条链是一个 \(\times\) 的形态
判断点是否在树上的一条路径上的时间复杂度为 \(O(logn)\),树剖处理出所有的链,判断该点是否存在于某一区间即可
T2
\(des\)
定义 \(f(l, r) = max(a_i - a_j), 其中 l <= i,j <= r\)
求 \[\sum_{i = 1} ^ {n} \sum_{j = i} ^ {n} f(i, j)\]
\(sol\)
考虑转化
该问题等价于所有区间的最大值 - 所有区间的最小值
这样的话考虑每个点作为区间最大值所带来的贡献
记 \(pre_i\) 表示最大的 \(j\) 使得 \(a_j > a_i 且 j <= i\)
记 \(bhd_i\) 表示最小的 \(j\) 使得 \(a_j > a_i 且 j >= i\)
显然 \(a_i\) 所产生的贡献为 \((i - pre_i + 1 + bhd_i - i + (i - pre_i) * (bhd_i - i)) * a_i\)
对于最小值产生的负贡献依旧如此
对于 \(pre, bhd\) 可以用单调栈线性求出
T3
\(des\)
给出一棵树
定义 \(f(l, r)\) 表示为了使得 \([l, r]\) 号点联通所需要的最小边数
求 \[\sum_{i = 1} ^ {n} \sum_{j = i} ^ {n} f(i, j)\]
\(sol\)

D2
T1
\(des\)
二位直角坐标系上存在两点 \((x_1, y_1) (x_2, y_2)\)
每次可以使得 \(x_1 + 1, y + 1\) 或者 \(x_1 + 1, y_1 - 1\) 使得较靠左下角的点到达较靠右上角的点
只有一次使得 \(x_1 + 1\) 或者 \(y_1 + 1\) 的机会
\(sol\)
首先可以给方格黑白染色,发现两个颜色的点无法相互到达。如果起点和终点是不同色的,可以使用一次上下左右走的机会,使两个点位于处于同样的颜色。分别计算向上下左右走后的花费,取最小值。
考虑计算花费:
如果可以题目是上下左右走,那么两点的花费就是 \(abs(s1-s2)+abs(t1-t2)\) 。
那么斜着走也是同理,假设将方格旋转 \(45\) 度,求出旋转后的坐标,答案同样可以使用上面的公式。
其实std只需要一行
T2
\(des\)
存在长度为 \(l1 >= 3\) 的字符串 \(s1\),
向其后添加长度为 \(l2 = 2 或 3\) 的字符串 \(s2\)
求所有可能的 \(s2\)
相邻的 \(s2\) 不能相同
相同就很简单啦
\(sol\)
最重要的一点就是 \(s1\) 任意
这样的话对于一个位置 \(x\), 若用 \(x\) 当做某种 \(s2\) 的首字母
只需要满足该字符串的后面的字符串全部合法就可以了
因为前面的只要长度 \(>= 3\) 都可以当做某个 \(s1\)
从后往前 dp
\(f2\) 表示 \(i, i +1\) 可以计入答案
\(f3\) 表示 \(i, i +1, i + 2\) 可以计入答案
转移

A tow-day exam的更多相关文章
- Linux学习之Exam系统发布
配置时间:2015年11月27日 配置人:撰写人:微冷的雨 Happy 01.Linux安装图 欢迎页面 桌面 02.Linux命令之文件目录操作 给北大青鸟五道口校区创建三个机房(L4,L5,L ...
- CF534A Exam 构造
An exam for n students will take place in a long and narrow room, so the students will sit in a line ...
- CF Exam (数学)
Exam time limit per test 1 second memory limit per test 256 megabytes input standard input output s ...
- Exam 70-462 Administering Microsoft SQL Server 2012 Databases 复习帖
好吧最近堕落没怎么看书,估计这个月前是考不过了,还是拖到国庆之后考试吧.想着自己复习考试顺便也写点自己的复习的概要,这样一方面的给不准备背题库的童鞋有简便的复习方法(好吧不被题库的同学和我一样看MSD ...
- Final Exam Arrangement(ZOJ)
In Zhejiang University, there are N different courses labeled from 1 to N. Each course has its own t ...
- 有感PMI Exam Dev Workshop
有幸參加了PMI协会在上海举办的PMI Exam Development Workshop活动.这是PMI协会第二次在中国举办此活动,上一次是2009年北京. 我第一次參加,感觉收获非常多. 我们知道 ...
- Exam(贪心)
Exam Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- B题 Before an Exam
Description Tomorrow Peter has a Biology exam. He does not like this subject much, but d days ago he ...
- HDU 5240 Exam
The 2015 ACM-ICPC China Shanghai Metropolitan Programming Contest 2015ACM-ICPC上海大都会赛 签到题 #include< ...
- 考分鄙视(exam)
考分鄙视(exam) 题目描述 Whence这个学期考了n次试,每一次都有一个0-20000之间的整数分数.Whence本来的状态应该是每一次考试都比前一次多一分(除第一次),但由于他很不稳定,偏差可 ...
随机推荐
- Python3基础语法(20190617)
字符串 字符串是以单引号'或双引号"括起来的任意文本,比如'abc',"xyz"等等.请注意,''或""本身只是一种表示方式,不是字符串的一部分,因此 ...
- js获取项目名称
//获取路径 var pathName=window.document.location.pathname; //截取,得到项目名称 var projectName=pathName.substrin ...
- Navicat premium工具转储数据表的结构时,datatime字段报错
Navicat premium工具导出数据库: Navicat premium工具导入数据库: 运行SQL文件,遇到的错误,红色下划线提示,发现:(SQL文件的时间有问题) 不是insert语句有问题 ...
- .Net Core 注入学习——注册服务
解析 .Net Core 注入——注册服务发表于:2017-10-23 10:47 作者:行走即歌 来源:51Testing软件测试网采编字体:大 中 小 | 上一篇 | 下一篇 |我要投稿 | 推荐 ...
- 记录用到的mssql的几个方法
1.RIGHT ( character_expression , integer_expression ) 返回字符串中从右边开始指定个数的字符 character_expression 字符或二进制 ...
- Java调用WebService方法总结(7)--CXF调用WebService
CXF = Celtix + XFire,继承了Celtix和XFire两大开源项目的精华,是一个开源的,全功能的,容易使用的WebService框架.文中所使用到的软件版本:Java 1.8.0_1 ...
- ZeroMQ自查手册
简介 ZMQ (以下 ZeroMQ 简称 ZMQ)是一个简单好用的传输层,像框架一样的一个 socket library,他使得 Socket 编程更加简单.简洁和性能更高.是一个消息处理队列库,可在 ...
- vue-resource 中 get / post / jsonp 三种请求方式的异同
let url = 'http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20&page=2';let params ...
- git 出现 fatal: remote origin already exists 错误
当输入$ git remote add origin git@github.com:djqiang(github帐号名)/gitdemo(项目名).git 出现 如下错误: 解决办法如下: 1.先输入 ...
- Vue项目中使用svg图标
svg的图片有着颜色自定义大小自定义的优势.在阿里图标库可以下载svg图片. 那么在vue框架中我们该怎么使用svg图片呢 这个时候就用到了 webpack 插件 svg-sprite-loader ...