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的更多相关文章

  1. Linux学习之Exam系统发布

    配置时间:2015年11月27日 配置人:撰写人:微冷的雨   Happy 01.Linux安装图 欢迎页面 桌面 02.Linux命令之文件目录操作 给北大青鸟五道口校区创建三个机房(L4,L5,L ...

  2. CF534A Exam 构造

    An exam for n students will take place in a long and narrow room, so the students will sit in a line ...

  3. CF Exam (数学)

     Exam time limit per test 1 second memory limit per test 256 megabytes input standard input output s ...

  4. Exam 70-462 Administering Microsoft SQL Server 2012 Databases 复习帖

    好吧最近堕落没怎么看书,估计这个月前是考不过了,还是拖到国庆之后考试吧.想着自己复习考试顺便也写点自己的复习的概要,这样一方面的给不准备背题库的童鞋有简便的复习方法(好吧不被题库的同学和我一样看MSD ...

  5. Final Exam Arrangement(ZOJ)

    In Zhejiang University, there are N different courses labeled from 1 to N. Each course has its own t ...

  6. 有感PMI Exam Dev Workshop

    有幸參加了PMI协会在上海举办的PMI Exam Development Workshop活动.这是PMI协会第二次在中国举办此活动,上一次是2009年北京. 我第一次參加,感觉收获非常多. 我们知道 ...

  7. Exam(贪心)

    Exam Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  8. B题 Before an Exam

    Description Tomorrow Peter has a Biology exam. He does not like this subject much, but d days ago he ...

  9. HDU 5240 Exam

    The 2015 ACM-ICPC China Shanghai Metropolitan Programming Contest 2015ACM-ICPC上海大都会赛 签到题 #include< ...

  10. 考分鄙视(exam)

    考分鄙视(exam) 题目描述 Whence这个学期考了n次试,每一次都有一个0-20000之间的整数分数.Whence本来的状态应该是每一次考试都比前一次多一分(除第一次),但由于他很不稳定,偏差可 ...

随机推荐

  1. C# HtmlAgilityPack+Selenium爬取需要拉动滚动条的页面内容

    现在大多数网站都是随着滚动条的滑动加载页面内容的,因此单纯获得静态页面的Html是无法获得全部的页面内容的.使用Selenium就可以模拟浏览器拉动滑动条来加载所有页面内容. 前情提要 C#HtmlA ...

  2. Matlab图形绘制

    图形绘制 离散函数图形: 例:离散数据和离散函数可视化(离散数据作图方式) X1=[,,,,,,,,,,,,,,,,,,,]; Y1=[,,,,,,,,,,,,,,,,,,,]; figure() p ...

  3. 利用脚本一键执行脚本,创建SharePoint文档库列表

    SharePoint基于文档库和列表上进行二次开发,生成新的文档库和新的列表模板 通过新的模板,创建新的文档库与列表 --定义site对象$site = SPSite http://dvt176/si ...

  4. jQuery 名称发生冲突怎么办【问题】

    [问题]jQuery 名称发生冲突怎么办? [答案]jQuery 使用 $ 符号作为 jQuery 的简介方式.某些其他 JavaScript 库中的函数(比如 Prototype)同样使用 $ 符号 ...

  5. Python学习日记(十二) 匿名函数

    匿名函数: 未解决一些简单的需求而设计的函数 语法: func = lambda x : x**2 func:函数名 lambda:类似def的关键字 x:参数 x**2:返回值表达式 适用内置函数: ...

  6. DRF 筛选

    from rest_framework.generics import ListAPIView,CreateAPIView,UpdateAPIView,RetrieveAPIView,DestroyA ...

  7. 如何为UEditor设置默认值

    // 初始化UEditor var ue = UE.getEditor('editor'); ue.ready(function() { //设置默认值 ue.setContent('默认值....' ...

  8. Android笔记(六十七) 自定义控件

    实际编程中,系统提供的控件往往无法满足我们的需求,一来是样子丑陋,二来是一些复杂的组合需要多次使用的话,每次都写一堆控件的组合会很耗费时间,所以我们将这些组件的组合自定义为一个新的控件,以后使用的时候 ...

  9. Android GOT Hook

    最后介绍的这种hook方式原理比较简单,只需要将GOT表中的目标函数地址替换为我们自己的函数地址即可,但它的缺点是只能对导入函数进行hook,还需要对elf文件的结构有所了解. 一.获取到GOT表在内 ...

  10. Qt错误: 程序数据库管理器不匹配 请检查安装

    错误提示: C1902: 程序数据库管理器不匹配:请检查安装解决 解决方法: 到D:\VisualStudio2015\VC\bin目录下面拷贝mspdbsrv.exe.mspdb140.dll.ms ...