LuoguP7441 「EZEC-7」Erinnerung 题解
Content
给定 \(x,y,K\)。定义两个数列 \(c,e\),其中 \(c_i=\begin{cases}x\cdot i&x\cdot i\leqslant K\\-K&\text{otherwise}\end{cases}\),\(e_i=\begin{cases}y\cdot i&y\cdot i\leqslant K\\-K&\text{otherwise}\end{cases}\)。每次操作从两个数列中各选取一个数,满足两个数之和 \(\geqslant K\)。一个数选取了之后不能再重复取。问你一共能进行多少次操作。
数据范围:\(t\) 组数据,\(1\leqslant t\leqslant 10^5\),\(0\leqslant x,y\leqslant 10^{10}\),\(1\leqslant K\leqslant 10^{10}\)。
Solution
不难发现,如果 \(x,y\neq0\),那么答案必定是 \(\min\{\left\lfloor\dfrac Kx\right\rfloor,\left\lfloor\dfrac Ky\right\rfloor\}\)。
证明:
(1) \(y\geqslant x\),则对于 \((c_n,e_1)\) 这一对数(\(n\) 表示能够使 \(c_i\geqslant 0\) 成立的最大的 \(i\)),因为 \(c_n+x\geqslant K\),而 \(y\geqslant x\),所以必然有 \(c_n+e_1=c_n+y\geqslant K\)。后面的 \((c_{n-1},e_2),\dots\) 也显然成立。
(2)\(y\leqslant x\),则对于 \((c_1,e_m)\) 这两对 (\(m\) 含义类比于上面的 \(n\)),因为 \(e_m+y\geqslant K\),而 \(x\geqslant y\),所以必然有 \(c_1+e_m=e_m+x\geqslant K\)。后面的 \((c_2,e_{m-1}),\dots\) 也显然成立。
证明完之后我们再来看看 \(x,y\) 中至少有一个等于 \(0\) 时的情况:
(1)\(x,y\) 中有且仅有一个等于 \(0\)。则我们需要看是否有 \(\max\{x,y\}\mid K\),如果有的话,那我们可以拿一个 \(K\) 和 \(0\) 组成一对,这对数的和恰好等于 \(K\),此时答案为 \(1\);否则,答案为 \(0\)。
(2)\(x,y\) 都等于 \(0\),显然,由于 \(K\geqslant 1\),且无法选出一对数使得它们的和为正整数,所以答案为 \(0\)。
分类讨论完这些情况后,代码就不难打了。
Code
int main() {
MT {
ll x = Rll, y = Rll, k = Rll;
if(!x && y && !(k % y)) puts("1");
else if(!y && x && !(k % x)) puts("1");
else write(min((!x ? 0 : k / x), (!y ? 0 : k / y))), puts("");
}
return 0;
}
LuoguP7441 「EZEC-7」Erinnerung 题解的更多相关文章
- 「GXOI / GZOI2019」简要题解
「GXOI / GZOI2019」简要题解 LOJ#3083. 「GXOI / GZOI2019」与或和 https://loj.ac/problem/3083 题意:求一个矩阵的所有子矩阵的与和 和 ...
- loj#2054. 「TJOI / HEOI2016」树
题目链接 loj#2054. 「TJOI / HEOI2016」树 题解 每次标记覆盖整棵字数,子树维护对于标记深度取max dfs序+线段树维护一下 代码 #include<cstdio> ...
- 【题解】#6622. 「THUPC 2019」找树 / findtree(Matrix Tree+FWT)
[题解]#6622. 「THUPC 2019」找树 / findtree(Matrix Tree+FWT) 之前做这道题不理解,有一点走火入魔了,甚至想要一本近世代数来看,然后通过人类智慧思考后发现, ...
- 洛谷比赛 「EZEC」 Round 4
洛谷比赛 「EZEC」 Round 4 T1 zrmpaul Loves Array 题目描述 小 Z 有一个下标从 \(1\) 开始并且长度为 \(n\) 的序列,初始时下标为 \(i\) 位置的数 ...
- 「POJ 3666」Making the Grade 题解(两种做法)
0前言 感谢yxy童鞋的dp及暴力做法! 1 算法标签 优先队列.dp动态规划+滚动数组优化 2 题目难度 提高/提高+ CF rating:2300 3 题面 「POJ 3666」Making th ...
- LOJ #2542. 「PKUWC 2018」随机游走(最值反演 + 树上期望dp + FMT)
写在这道题前面 : 网上的一些题解都不讲那个系数是怎么推得真的不良心 TAT (不是每个人都有那么厉害啊 , 我好菜啊) 而且 LOJ 过的代码千篇一律 ... 那个系数根本看不出来是什么啊 TAT ...
- LOJ #2802. 「CCC 2018」平衡树(整除分块 + dp)
题面 LOJ #2802. 「CCC 2018」平衡树 题面有点难看...请认真阅读理解题意. 转化后就是,给你一个数 \(N\) ,每次选择一个 \(k \in [2, N]\) 将 \(N\) 变 ...
- LOJ #2541. 「PKUWC 2018」猎人杀(容斥 , 期望dp , NTT优化)
题意 LOJ #2541. 「PKUWC 2018」猎人杀 题解 一道及其巧妙的题 , 参考了一下这位大佬的博客 ... 令 \(\displaystyle A = \sum_{i=1}^{n} w_ ...
- LOJ #2540. 「PKUWC 2018」随机算法(概率dp)
题意 LOJ #2540. 「PKUWC 2018」随机算法 题解 朴素的就是 \(O(n3^n)\) dp 写了一下有 \(50pts\) ... 大概就是每个点有三个状态 , 考虑了但不在独立集中 ...
随机推荐
- Redis | 第7章 Redis 服务器《Redis设计与实现》
目录 前言 1. 命令请求的执行过程 1.1 发送命令请求 1.2 读取命令请求 1.3 命令执行器(1):查找命令实现 1.4 命令执行器(2):执行预备操作 1.5 命令执行器(3):调用命令的实 ...
- CF1562E Rescue Niwen!
开始的时候只会一个\(O(n^2log)\) 即做出所有的\(n^2\)串,显然可以用\(SAM\)来进行这样一个排序,然后\(log\)做. 但这种题我们显然要找一些友好的性质: 我们发现字符串的比 ...
- 系统发育树邻接法(NJ)和非加权组平均法(UPGMA)之比较
目录 1.原理的区别 2.实操比较 UPGMA NJ法 保存树文件 更深理解 1.原理的区别 主要区别在于,非加权组平均法(UPGMA)是基于平均链接方法的聚集层次聚类方法,而邻接法(NJ)是基于最小 ...
- nginx_access_log的格式设置
log_format <NAME> <String>; 关键字 格式标签 日志格式 关键字:其中关键字error_log不能改变 格式标签:格式标签是给一套日志格式设置一 ...
- GO 语言使用copy 拷贝切片的问题
使用copy,直接改变原片的值,而不是先创建一个副本.
- 34. Swap Nodes in Pairs
Swap Nodes in Pairs My Submissions QuestionEditorial Solution Total Accepted: 95230 Total Submission ...
- A Child's History of England.48
A few could not resolve to do this, but the greater part complied. They made a blazing heap of all t ...
- acid, acknowledge, acquaint
acid sulphuric|hydrochloric|nitric|carbolic|citric|lactic|nucleic|amino acid: 硫|盐|硝|碳|柠檬|乳|核|氨基酸 王水是 ...
- fastjson转换数字时,格式化小数点
使用fastjson类库转换java对象时,对于BigDecimal类型,有时需要特殊格式,比如: 1.0,转为json时候,要求显式为1,因此需要在转换时做处理.步骤如下: 1.新建类,实现Valu ...
- 页面屏蔽backspace键
1 //页面加载完成 2 $(document).ready(function(){ 3 //禁止退格键 作用于Firefox.Opera 4 document.onkeypress = banBac ...