模拟二月金组,三个半小时AK。

USACO 2019 Feburary Contest, Gold T1

题意:给定一棵树,每个点有点权,每次可以进行以下操作之一:

  • 更改一个点的点权
  • 求某条路径上的点的点权的亦或值

思路:这这这。。。金组什么时候第一题都是树链剖分了。。。

这题是个树链剖分的模板题。(但是我捣鼓了好久。。。

首先将原树进行树链剖分,将每一个节点分在一条重链内。然后链与链之间用轻链连接。

对于操作1,我们只用将这个点的值在\(BIT\)中修改即可。

对于操作2,我们这样处理:

首先我们假设\(u\)和\(v\)中\(u\)所在重链的头的深度大于\(v\)所在重链的头的深度。

那么我们从\(u\)跳到\(u\)所在重链的头时就不会忽略\(u\)和\(v\)的\(lca\)。

(这边很重要,我就是第一开始只考虑了\(u\)和\(v\)的深度比较,然后只过了样例,其它点一个没过。。。

将\(u\)跳到\(u\)所在重链的头的父亲,并且将答案加上[\(u\)所在重链的头,\(u\)]这段区间的亦或和。

然后迭代处理即可。

USACO 2019 Feburary Contest, Gold T2

题意:给一个\(1..n\)的排列,问这个排列的最长满足以下要求的前缀的长度:

如果我们按照顺序从第一个数遍历,每一个数有两种选择:

  1. 将这个数放在某个已有栈的栈顶
  2. 将这个数放在所有栈右侧新建的一个栈的栈顶

中间可以不限次拿走现存所有栈中最左的那个的栈顶的数。

然后要求是让每次拿走的数最终能按大小排序。

思路:首先肯定是二分最长前缀辣

\(check\)的时候是这样做的:

每次找到栈顶比当前取的数大的第一个栈,把当前的数压到栈顶里,因此可以证明栈顶大小从左向右单调上升。

然后中途看最左栈顶是不是当前没拿到的最小数,如果是则将它弹掉。

然后就好辣(这题比第一题简单好多好多。。。

USACO 2019 Feburary Contest, Gold T3

题意:给\(n\)个矩形,可以再画两个互不相交的,求最大的被\(k\)个矩形覆盖的面积。

思路:(这题意怎么这么简单。。。

首先我们通过差分算出每一个点被多少个矩形覆盖了,然后每一个新画的矩形所能做出的最大贡献就是它覆盖的面积中被\(k-1\)个覆盖的\(-\)被\(k\)个覆盖的。所以我们可以通过\(dp\)预处理出\([[0,200],[0,200]]\)的一个删掉上面\(i\)行的子矩形中新画一个所能构成的最好情况,同理算出删掉左边\(j\)列的最好情况,枚举第一个矩形,然后第二个矩形所能造成的贡献都预处理好了,直接用即可。

【USACO 2019 Feburary Contest】Gold的更多相关文章

  1. 题解 【USACO 4.2.1】草地排水

    [USACO 4.2.1]草地排水 Description 在农夫约翰的农场上,每逢下雨,贝茜最喜欢的三叶草地就积聚了一潭水.这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段时间.因此,农夫 ...

  2. 【USACO 3.1.2】总分

    [描述] 学生在我们USACO的竞赛中的得分越多我们越高兴.我们试着设计我们的竞赛以便人们能尽可能的多得分,这需要你的帮助.我们可以从几个种类中选取竞赛的题目,这里的一个"种类"是 ...

  3. 【USACO 2.1.1】城堡

    [题目描述] 我们憨厚的USACO主人公农夫约翰(Farmer John)以无法想象的运气,在他生日那天收到了一份特别的礼物:一张“幸运爱尔兰”(一种彩票).结果这张彩票让他获得了这次比赛唯一的奖品— ...

  4. 【USACO 1.1.1】你的飞碟在这儿

    [问题描述] 一个众所周知的事实,在每一慧星后面是一个不明飞行物UFO. 这些不明飞行物时常来收集来自在地球上忠诚的支持者. 不幸地,他们的空间在每次旅行只能带上一群支持者. 他们要做的是用一种聪明的 ...

  5. 【USACO 3.3.2】商品购物

    [描述] 在商店中,每一种商品都有一个价格(用整数表示).例如,一朵花的价格是 2 zorkmids (z),而一个花瓶的价格是 5z .为了吸引更多的顾客,商店举行了促销活动. 促销活动把一个或多个 ...

  6. 【USACO 3.3.1】骑马修栅栏

    [描述] Farmer John每年有很多栅栏要修理.他总是骑着马穿过每一个栅栏并修复它破损的地方. John是一个与其他农民一样懒的人.他讨厌骑马,因此从来不两次经过一个栅栏.你必须编一个程序,读入 ...

  7. 【USACO 3.2.6】香甜的黄油

    [描述] 农夫John发现做出全威斯康辛州最甜的黄油的方法:糖.把糖放在一片牧场上,他知道N(1<=N<=500)只奶牛会过来舔它,这样就能做出能卖好价钱的超甜黄油.当然,他将付出额外的费 ...

  8. 【USACO 3.2.5】魔板

    [描述] 在成功地发明了魔方之后,鲁比克先生发明了它的二维版本,称作魔板.这是一张有8个大小相同的格子的魔板: 1 2 3 4 8 7 6 5 我们知道魔板的每一个方格都有一种颜色.这8种颜色用前8个 ...

  9. 【USACO 3.2.4】饲料调配

    [描述] 农夫约翰从来只用调配得最好的饲料来喂他的奶牛.饲料用三种原料调配成:大麦,燕麦和小麦.他知道自己的饲料精确的配比,在市场上是买不到这样的饲料的.他只好购买其他三种混合饲料(同样都由三种麦子组 ...

随机推荐

  1. webpack4 系列教程(四): 单页面解决方案--代码分割和懒加载

    本节课讲解webpack4打包单页应用过程中的代码分割和代码懒加载.不同于多页面应用的提取公共代码,单页面的代码分割和懒加载不是通过webpack配置来实现的,而是通过webpack的写法和内置函数实 ...

  2. Archlinux/Manjaro使用笔记-报错:一个或多个 PGP 签名无法校验!的解决方法

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 解决办法:添加无法校验的pgp签名为信任 gpg --recv-keys xxxxxx xxxxxx为无法校验的gpg值

  3. 【工具相关】Web-Sublime Text2-注释

    按Command+/ 会出现<!----> 如图所示: 参考资料:<菜鸟教程>

  4. 测试思想-测试设计 史上最详细测试用例设计实践总结 Part2

    史上最详细测试用例设计实践总结 by:授客 QQ:1033553122 -------------------------接 Part1-------------------------- 方法:这里 ...

  5. 开始记录 Windows Phone 生涯

    已经快接近三年没有更新博客了,最近打算把博客这块从新建设起来. 由于工作原因,现在已经很久没有接触过Android了.目前工作是全力 Windows Phone,并且也已经工作一年半了,以后会陆续把之 ...

  6. 通用triggerEvent方法

    假设有一个id为testA的a元素,然后有以下代码(jquery已存在): $(document).ready(function(){ $('#testA').on('testEvent', func ...

  7. C语言开发的思考

    维护过十万行代码的通信协议,自己从头开始开发过几万行的代码,步骤: 1.移植性.为移植性对数据类型做重新定义. 2.内存计数.不要直接使用malloc和free,而是给所有类型的内存申请定义类型,并计 ...

  8. psotgresql之大小写

    框中内容来自<PostgreSQL数据库对象名大小写敏感> 网址:http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=812 ...

  9. 用Python实现数据结构之优先级队列

    优先级队列 如果我们给每个元素都分配一个数字来标记其优先级,不妨设较小的数字具有较高的优先级,这样我们就可以在一个集合中访问优先级最高的元素并对其进行查找和删除操作了.这样,我们就引入了优先级队列 这 ...

  10. vSphere ESXi 重新安装后的虚拟机恢复(转载)

    安装的 ESXi 的物理主机密码忘记,登录 不上了,需要重新安装 ESXi,安装后恢复原先物理主机上的 虚拟机的方法如下(VMFS分区完好): 关于 VMFS 分区: ESXi 的安装时会划分一个分区 ...