模拟二月金组,三个半小时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. csharp: Configuring ASP.NET with Spring.NET and FluentNHibernate

    Domain: FluentNhibernateLocalSessionFactoryObject.cs using System; using System.Collections.Generic; ...

  2. 用JS来实现的第一个简单游戏 :贪吃蛇

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. js 键盘码

    键盘各按键对应的数字 keycode 9 = Tab keycode 12 = Clear keycode 13 = Enter keycode 16 = Shift keycode 17 = Con ...

  4. 原来这样就可以开发出一个百万量级的Android相机

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由QQ空间开发团队发表于云+社区专栏 最近我负责开发了一个跟Android相机有关的需求,新功能允许用户使用手机摄像头,快速拍摄特定尺寸 ...

  5. Anaconda3 错误集合

    1. An error ocurred while starting the kernel 答:个人猜测有可能是配置文件出现问题,于是采用如下解决方法: 在终端中输入spyder --reset,重置 ...

  6. Appium学习——Appium工作原理

    appium的工具原理 Appium-client>>>>Appium-server>>>>移动设备 ========================= ...

  7. 【HANA系列】SAP HANA XS使用JavaScript(JS)调用存储过程(Procedures)

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA XS使用Jav ...

  8. .net 调用R语言的函数(计算统计值pvalue 对应excel :ttest)

    Pvalue 计算 项目设计pvalue计算,但是由于.net 没有类似的公式或者函数,最终决定使用.net 调用R语言 采用.net 调用r语言的公用函数 需要安装 r语言环境 https://mi ...

  9. Hive-1.2.1_06_累计报表查询

    1. 数据准备 # 本地数据准备 [yun@mini01 hive]$ pwd /app/software/hive [yun@mini01 hive]$ ll /app/software/hive/ ...

  10. 初识Python - Python的历史(转)

    声明: 本文转自维基百科 如有意见请联系删除 综述 该编程语言 的Python是在20世纪80年代末的设想,和实施是在1989年12月开始由吉多·范罗苏姆在CWI在荷兰的继任者农行能够异常处理,并与接 ...