Codeforces1409 题解(A-F)
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)的更多相关文章
- [题解向] CF#536Div2の题解 E&F
\(0x01~~Preface\) \(emmm\)这次CF本身打的很顺畅,但是居然unrated了--咕咕咕咕 这是头一次CF有比赛我全部题目都做了--可喜可贺可喜可贺233 简单总结一下前面四道题 ...
- AtCoder Regular Contest 075 2017年6月4日 C、D、E题解
http://arc075.contest.atcoder.jp/assignments 昨晚做的atcoder,今天写个简单题解. F题不会做,800point的,就跪了,要等zk大佬来做.zk能做 ...
- [题解] [SDOI2015] 序列统计
题面 题解 设 \(f[i][j]\) 代表长度为 \(i\) 的序列, 乘积模 \(m\) 为 \(j\) 的序列有多少个 转移方程如下 \[ f[i + j][C] = \sum_{A*B\equ ...
- 并不对劲的CF1245E&F:Cleaning Ladders
CF1245 E. Hyakugoku and Ladders 题目大意 有一个10 \(\times\) 10的网格,你要按这样的路径行走: 网格中有一些单向传送门,每个传送门连接的两个格子在同一列 ...
- ABC130 Task F. Minimum Bounding Box
题目链接 题解 最小的 bounding box 一定可以在四个时间段的最左端点和最右端点之间取到. 举例言之,设四个时间段分别是 (2, 5), (7, 10), (4, 9), ( 10, 20) ...
- [HG]小G坐电梯 题解
C 小G坐电梯 题目描述 小G来到了著名的某大厦.大厦一共有n层,初始的时候小G在第 A 层. 小G特别想去B层小 M 的办公室看一看,然而因为安保原因,B层已经被封锁无法进入. 但是小G既然来了,就 ...
- AtCoder Beginner Contest 221 A~E题解
目录 A - Seismic magnitude scales B - typo C - Select Mul D - Online games E - LEQ 发挥比较好的一场,就来搓篇题解. F ...
- luogu[1279]字串距离
题目描述 设有字符串X,我们称在X的头尾及中间插入任意多个空格后构成的新字符串为X的扩展串,如字符串X为”abcbcd”,则字符串“abcb□cd”,“□a□bcbcd□”和“abcb□cd□”都是X ...
- [HDU3709]Balanced Number
[HDU3709]Balanced Number 试题描述 A balanced number is a non-negative integer that can be balanced if a ...
随机推荐
- Linux入门-程序开发
Linux程序开发 linux程序总体上来说是分两部分的: 1. 底层驱动程序开发: 2.应用层应用程序开发: 驱动程序 一般情况下驱动是跟内核与硬件有关系的,编程语言是C语言,需要懂一些硬件的知识, ...
- Json字符串与QVariantList 对象相互转换
在Qt中QVariantList 使用起来很方便,如果涉及到数据的传输,需要将QVariantList 数据转换为JsonArray字符串,这个转换Qt已经实现好了,只需要调用接口就可以完成转换,代码 ...
- c++中包含string成员的结构体拷贝导致的double free问题
最近调试代码遇到一个的问题,提示double free,但是找了好久也没有找到释放两次的地方,后来调试发现,是由于使用了一个包含string成员的结构体,这个结构体使用memcpy拷贝导致的问题: 代 ...
- Pytorch_第七篇_深度学习 (DeepLearning) 基础 [3]---梯度下降
深度学习 (DeepLearning) 基础 [3]---梯度下降法 Introduce 在上一篇"深度学习 (DeepLearning) 基础 [2]---神经网络常用的损失函数" ...
- HIVE常用正则函数(like、rlike、regexp、regexp_replace、regexp_extract)
Oralce中regex_like和hive的regexp对应 LIKE 语法1: A LIKE B 语法2: LIKE(A, B) 操作类型: strings 返回类型: boolean或null ...
- sockjs.js?9be2:1606 GET http://192.168.1.101:8080/sockjs-node/info?t=1583642185049 net::ERR_CONNECTION_TIMED_OUT错误连接方式解决方法
在使用vue-cli脚手架创建项目的时候,在cnpm create app命令后,项目创建成功后通过npm run serve命令运行以后,控制台报错,sockjs.js?9be2:1606 GET ...
- Arm pwn学习
本文首发于“合天智汇”公众号 作者:s0xzOrln 声明:笔者初衷用于分享与普及网络知识,若读者因此作出任何危害网络安全行为后果自负,与合天智汇及原作者无关! 刚刚开始学习ARM pwn,下面如有错 ...
- Bytom Dapp 开发笔记(一):架构设计
简介 研究比原链已经一年了,用比原链做了几个dapp,而且最近还做了一个基于他们插件钱包的dapp,总结了一些遇到的坑,还有一些技术细节,接下来我会分成三章,从dapp设计架构上,到深入到源码分析去帮 ...
- tensorflow 三种模型:ckpt、pb、pb-savemodel
1.CKPT 目录结构 checkpoint: model.ckpt-1000.index model.ckpt-1000.data-00000-of-00001 model.ckpt-1000.me ...
- C# ASP 分析器错误信息: 无法识别的属性“targetFramework”。请注意属性名称区分大小写。
在本地运行的应用,部署到服务器上出现错误.原因是web.config 中:<compilation debug="true" targetFramework="4. ...