AGC025简要题解

B RGB Coloring

一道简单题,枚举即可。

C Interval Game

考虑可以进行的操作只有两种,即左拉和右拉,连续进行两次相同的操作是没有用的。

左拉时肯定会选择右端点尽量小的,右拉选择左端点尽量大的,所以排序之后贪心即可。

D Choosing Points

首先证明对于所有\(d\),假设让两个不能同时选的点之间连一条边,那么结果是一张二分图。

\(d\)是奇数可以黑白染色,\(d\)是偶数的时候,显然连边的两点在同一个颜色内。那么我们可以只考虑这个颜色,获得一个新的网格图,这个网格图的边长较大,这时可以让\(d\)相应缩小,最终\(d\)会变成奇数。

考虑构造出两张二分图,然后就可以把点分为4种,即在两张图内分别属于哪一边。点数总共\(4n^2\),所以至少一种满足答案。

E Walking on a Tree

首先考虑每条边有多少条路径经过它,这样可以得到一个答案上界是\(\sum{min(2,ti)}\)。实际上这个上界一定能被构造出来。

这种题有一种很经典的想法,就是删去叶子,使得图的规模变小,那么我们就每次考虑一个叶子节点\(x\)和它唯一的出边\(E\)。假设\(E\)的经过次数小于2,那么最终无论是什么方向都没有问题,可以砍短一截;否则任意选择两条路径\(x-y\),\(x-z\),假设这两条路径都经过了\(x-a\),那么我们可以令这两条路径方向相反,使得\(x-a\)一定被双向经过,这两条路径就变成了\(y-z\)的未定向路径。这两条路径以外的路径同理砍短一截即可。这样重复\(n-1\)次就能找到最优解了,复杂度O(nm)。

F Addition and Andition

从低位开始一位位考虑吧,对于每一位,求出它进行了哪些加法操作和每次操作的时间,不难求出最后的状态。

复杂度显然不对,考虑优化。定义势能函数等于两倍的\(01\)或者\(10\)加法操作的数量加上三倍的\(11\)加法操作的数量,考虑加法时可能遇见的情况。

假设加上\(01\)或者\(10\),那么暴力做一定没问题,因为这样相当于用两次这种操作换来一次进位的加法,势能函数至少减去1。

假设加上\(11\),那么有两种情况。如果之前是\(01\)或者\(10\),那么相当于\(11\)变成\(01\)或者\(10\),势能函数减少。假设是\(00\),那么这么做不改变势能函数,所以考虑把连续的一段\(11\)用链表接起来缩成一段,这样就可以\(O(1)\)处理一整段,显然段数和\(01\)与\(10\)的总量是同一个级别的。

这样暴力的做法通过简单的缩段就变成\(O(n)\)的了。

(我从来没学过势能函数,只知道有这个东西,如果是我乱用了,呃…你理解就好了)

AGC025简要题解的更多相关文章

  1. Noip 2014酱油记+简要题解

    好吧,day2T1把d默认为1也是醉了,现在只能期待数据弱然后怒卡一等线吧QAQ Day0 第一次下午出发啊真是不错,才2小时左右就到了233,在车上把sao和fate补掉就到了= = 然后到宾馆之后 ...

  2. Tsinghua 2018 DSA PA2简要题解

    反正没时间写,先把简要题解(嘴巴A题)都给他写了记录一下. upd:任务倒是完成了,我也自闭了. CST2018 2-1 Meteorites: 乘法版的石子合并,堆 + 高精度. 写起来有点烦貌似. ...

  3. Codeforces 863 简要题解

    文章目录 A题 B题 C题 D题 E题 F题 G题 传送门 简要题解?因为最后一题太毒不想写了所以其实是部分题解... A题 传送门 题意简述:给你一个数,问你能不能通过加前导000使其成为一个回文数 ...

  4. HNOI2018简要题解

    HNOI2018简要题解 D1T1 寻宝游戏 题意 某大学每年都会有一次 Mystery Hunt 的活动,玩家需要根据设置的线索解谜,找到宝藏的位置,前一年获胜的队伍可以获得这一年出题的机会. 作为 ...

  5. JXOI2018简要题解

    JXOI2018简要题解 T1 排序问题 题意 九条可怜是一个热爱思考的女孩子. 九条可怜最近正在研究各种排序的性质,她发现了一种很有趣的排序方法: Gobo sort ! Gobo sort 的算法 ...

  6. BJOI2018简要题解

    BJOI2018简要题解 D1T1 二进制 题意 pupil 发现对于一个十进制数,无论怎么将其的数字重新排列,均不影响其是不是 \(3\) 的倍数.他想研究对于二进制,是否也有类似的性质. 于是他生 ...

  7. CQOI2018简要题解

    CQOI2018简要题解 D1T1 破解 D-H 协议 题意 Diffie-Hellman 密钥交换协议是一种简单有效的密钥交换方法.它可以让通讯双方在没有事先约定密钥(密码)的情况下,通过不安全的信 ...

  8. AtCoder ExaWizards 2019 简要题解

    AtCoder ExaWizards 2019 简要题解 Tags:题解 link:https://atcoder.jp/contests/exawizards2019 很水的一场ARC啊,随随便便就 ...

  9. Comet OJ - Contest #2 简要题解

    Comet OJ - Contest #2 简要题解 cometoj A 模拟,复杂度是对数级的. code B 易知\(p\in[l,r]\),且最终的利润关于\(p\)的表达式为\(\frac{( ...

随机推荐

  1. mysql中删除重复记录,并保留重复数据中的一条数据的SQL语句

    正好想写一条删除重复语句并保留一条数据的SQL,网上查了一部分资料写的很详细,但还是在这里写下自己的理解,以遍后续学习 .如下: 表字段和数据: SQL语句: [sql] view plain cop ...

  2. [Leetcode] 1.Two Sum(unordered_map)

    1.首先想到的方法就是两个for循环全部遍历,代码如下,可通过,但效率太低 class Solution { public: vector<int> twoSum(vector<in ...

  3. MyBatis原理简介

    1.什么是 MyBatis ? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyB ...

  4. P2580 于是他错误的点名开始了

    题目背景 XS中学化学竞赛组教练是一个酷爱炉石的人. 他会一边搓炉石一边点名以至于有一天他连续点到了某个同学两次,然后正好被路过的校长发现了然后就是一顿欧拉欧拉欧拉(详情请见已结束比赛CON900). ...

  5. 3. 无重复字符的最长子串(O(N))

    给定一个字符串,找出不含有重复字符的 最长子串 的长度. 示例: 给定 "abcabcbb" ,没有重复字符的最长子串是 "abc" ,那么长度就是3. 给定  ...

  6. BZOJ3144:[HNOI2013]切糕——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=3144 看着很像网络流,但是费用流貌似无法解决这个问题,其实甚至连忽略d的情况都做不到. 最小割? ...

  7. BZOJ2816:[ZJOI2012]网络——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=2816 https://www.luogu.org/problemnew/show/P2173 有一 ...

  8. [Leetcode] Construct binary tree from inorder and postorder travesal 利用中序和后续遍历构造二叉树

    Given inorder and postorder traversal of a tree, construct the binary tree. Note:  You may assume th ...

  9. Mysql Fabric实现学习笔记

    Mysql Fabric用来管理mysql服务,提供扩展性和容易使用的系统,管理mysql分片和高可用部署(当前实现了两个特性:高可用和使用数据分片的横向扩展,能单独使用或结合使用这两个特性.). 架 ...

  10. 一个简单的适用于Vue的下拉刷新,触底加载组件

    一个简单的适用于Vue的上拉刷新,触底加载组件,没有发布npm需要时直接粘贴定制修改即可 <template> <div class="list-warp-template ...