A. Yet Another Two Integers Problem

最优的操作中,\(k = \min(10, abs(a - b))\),记\(d=abs(a-b)\),最终的答案为\(ans = \lfloor \frac{d}{10} \rfloor + [10|d]\)。

B. Minimum Product

猜结论:最优的情况必定是先把可用次数尽可能地用在其中一个数,然后再将剩余操作尽可能地用在另外一个数上。

分别算出先a后b和先b后a的答案,然后取最小值即可。

C. Yet Another Array Restoration

根据题目描述得出:数组\(a\)是等差数列。

枚举\(x\)所在的位置和\(y\)所在的位置,然后就可以得出公差,首项和末项。如果首项大于零且末项大于等于\(y\),那么目前这个数列就是合法的。然后再贪心地取末项最小的就可以了。

D. Decrease the Sum of Digits

通过观察可以得到一个结论,就是一次操作必定要使当前位产生进位才会使各个位上数字的和减少,否则各个位上数字的和必定会增加。

然后就从低位到高位枚举,若当前各个位置上的和大于\(s\),就将当前位加到产生进位,然后枚举下一位,否则就可以结束枚举。

E. Two Platforms

通过观察可以发现:

  • \(y_i\)在这题中并不重要,可以将题目从二维转化为已维
  • 两块板子相离的结果必定优于两块板子相交或相切的结果
  • 板子的起点必定是点集中的某一个点

将点按\(x_i\)排序之后,若已知板子的覆盖范围,就可以用\(O(\log n)\)的时间求出板子覆盖了多少球。

枚举点集中的点,可以知道若板子的起点为\(x_i\),板子可以覆盖多少个点。

加上后缀最大值的处理,就可以知道若板子的起点大于等于\(x_i\),板子最多可以覆盖多少个点。

最后,只需要枚举第一块板子的起点,就可以知道第一块板子覆盖了多少个点,然后根据观察发现的第二个性质和后缀最大值就可以得到第二块板子最多覆盖多少个点,贪心地取最大值即可。

F. Subsequences of Length Two

一道比较有意思的dp

记\(dp_{i,j,c}\)表示对于\(s[0...i-1]\),使用\(j\)次修改操作,前\(i\)个字符里包含\(c\)个\(t_0\)时的答案。

每次要么把\(s_i\)变为\(t0\),要么把\(s_i\)变为\(t_1\),要么不操作

然后分析一下就可以得到转移方程

Codeforces1409 题解(A-F)的更多相关文章

  1. [题解向] CF#536Div2の题解 E&F

    \(0x01~~Preface\) \(emmm\)这次CF本身打的很顺畅,但是居然unrated了--咕咕咕咕 这是头一次CF有比赛我全部题目都做了--可喜可贺可喜可贺233 简单总结一下前面四道题 ...

  2. AtCoder Regular Contest 075 2017年6月4日 C、D、E题解

    http://arc075.contest.atcoder.jp/assignments 昨晚做的atcoder,今天写个简单题解. F题不会做,800point的,就跪了,要等zk大佬来做.zk能做 ...

  3. [题解] [SDOI2015] 序列统计

    题面 题解 设 \(f[i][j]\) 代表长度为 \(i\) 的序列, 乘积模 \(m\) 为 \(j\) 的序列有多少个 转移方程如下 \[ f[i + j][C] = \sum_{A*B\equ ...

  4. 并不对劲的CF1245E&F:Cleaning Ladders

    CF1245 E. Hyakugoku and Ladders 题目大意 有一个10 \(\times\) 10的网格,你要按这样的路径行走: 网格中有一些单向传送门,每个传送门连接的两个格子在同一列 ...

  5. ABC130 Task F. Minimum Bounding Box

    题目链接 题解 最小的 bounding box 一定可以在四个时间段的最左端点和最右端点之间取到. 举例言之,设四个时间段分别是 (2, 5), (7, 10), (4, 9), ( 10, 20) ...

  6. [HG]小G坐电梯 题解

    C 小G坐电梯 题目描述 小G来到了著名的某大厦.大厦一共有n层,初始的时候小G在第 A 层. 小G特别想去B层小 M 的办公室看一看,然而因为安保原因,B层已经被封锁无法进入. 但是小G既然来了,就 ...

  7. AtCoder Beginner Contest 221 A~E题解

    目录 A - Seismic magnitude scales B - typo C - Select Mul D - Online games E - LEQ 发挥比较好的一场,就来搓篇题解. F ...

  8. luogu[1279]字串距离

    题目描述 设有字符串X,我们称在X的头尾及中间插入任意多个空格后构成的新字符串为X的扩展串,如字符串X为”abcbcd”,则字符串“abcb□cd”,“□a□bcbcd□”和“abcb□cd□”都是X ...

  9. [HDU3709]Balanced Number

    [HDU3709]Balanced Number 试题描述 A balanced number is a non-negative integer that can be balanced if a ...

随机推荐

  1. IDEA必备插件系列-Rainbow Brackets(彩虹括号)

    Rainbow Brackets ,就是彩虹括号,各种鲜明颜色的括号 这个一个开源的项目: https://github.com/izhangzhihao/intellij-rainbow-brack ...

  2. 036_go语言中的原子计数器

    代码演示 package main import ( "fmt" "runtime" "sync/atomic" "time&qu ...

  3. 035_go语言中的速率限制

    代码演示 package main import "fmt" import "time" func main() { requests := make(chan ...

  4. Android Studio--家庭记账本(六)

    (Android studio家庭记账本源码已上传至github,https://github.com/xhj1074376195/CostBook_app) 今天记账本终于可以算是完成了,实现了账户 ...

  5. css笔记 定位的分类

    定位:解决元素摆放的问题 使用定位可以将元素摆放到任意位置 分类 1.默认的定位 块元素垂直排列,行内元素左右排列,称之为流 流:元素有序排列而形成的队伍 特殊的定位 浮动定位:可以让块元素左右排列 ...

  6. docker镜像,容器的操作和应用

    镜像操作 拉取镜像 从中央仓库拉取到本地 docker pull 镜像名称[:tag] #举个例子 :docker pull daocloud.io/libarary/tomcat:8.5.-jre8 ...

  7. 国人开源了一款小而全的 Java 工具类库,厉害啊!!

    最近栈长看到了一款小而全的 Java 工具类库:Hutool,Github 已经接近 14K Star 了,想必一定很优秀,现在推荐给大家,很多轮子不要再造了! Hutool 是什么 Hutool 是 ...

  8. 【POJ2723】Get Luffy Out - 二分+2-SAT

    题面描述 Ratish is a young man who always dreams of being a hero. One day his friend Luffy was caught by ...

  9. 【HNOI2010】弹飞绵羊 - LCT

    题目描述 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏.游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置设定初始弹力系 ...

  10. Collections.synchronizedMap()与ConcurrentHashMap区别

    Collections.synchronizedMap()与ConcurrentHashMap主要区别是:Collections.synchronizedMap()和Hashtable一样,实现上在调 ...