CodeForces-1278B-A-and-B
题意
对于\(t(1\leq t\leq 100)\)个测试点,给两个数\(a\)和\(b\),作如下操作:
第一次挑一个数使其加\(1\),第二次挑一个数使其加\(2\),以此类推,最后两个数相等,问最小操作数。
分析
题目所述意思即为挑选最小的\(n\),满足以下等式\((\pm\)表示可取正号可取负号\()\)
\]
我们令\(\left|a-b\right|\)为\(x\),我们先找到最小的\(k\)满足\(\frac{k*(k+1)}{2}\geq x\),即\((1)\)式中全为加号\((\)如果全为加号都不满足,其中一些变为减号肯定更不满足\()\)。我们有一个以下式子
\]
其中\(y\)为超过的部分。
\(1.\)如果\(y\)是偶数,我们已知\(y<k\),否则不满足上述\(k\)最小。那么我们将\(\frac{y}{2}\)的符号变为负号即可满足\((1)\)式,那么答案就是\(k\)。
\(2.\)如果\(y\)是奇数,那么该式子将一些正号变为负号也肯定不满足(改变后式子的值变化为偶数),我们往\((2)\)式左右都加上\(k+1\)。
- 如果\(k+1\)是偶数,那么\(y+k+1\)仍然为奇数,同上,仍不满足,我们需两边再加上\(k+2\),\(y+2*k+1\)为偶数,我们将\(\frac{y+1}{2}\)和\(k\)的符号变为负号即可满足\((1)\)式,\((y+1=2*k\)显然不满足条件\()\),那么答案就是\(k+2\)。
- 如果\(k+1\)是奇数,那么\(y+k+1\)为偶数,我们将\(\frac{y+k+1}{2}(\frac{y+k+1}{2}<k+1)\)的符号变为负号即可满足\((1)\)式,那么答案就是\(k+1\)
#pragma GCC optimize(3, "Ofast", "inline")
#include <bits/stdc++.h>
#define start ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#define ll long long
#define LL long long
#define pii pair<int,int>
#define int ll
#define ls st<<1
#define rs st<<1|1
using namespace std;
const int maxn = (ll) 1e5 + 5;
const int mod = (ll) 1e9 + 7;
const int inf = 0x3f3f3f3f3f3f3f3f;
int sum[maxn];
signed main() {
start;
for (int i = 1; i < maxn; ++i)
sum[i] = sum[i - 1] + i;
int T;
cin >> T;
while (T--) {
int a, b;
cin >> a >> b;
if (a > b)
swap(a, b);
int x = b - a;
int ans = lower_bound(sum, sum + maxn, x) - sum;
if ((sum[ans] - x) & 1) {
if (ans & 1)
cout << ans + 2 << '\n';
else
cout << ans + 1 << '\n';
} else
cout << ans << '\n';
}
return 0;
}
我现在连\(Div2\)的\(B\)都能卡一小时吗,我是真的菜
CodeForces-1278B-A-and-B的更多相关文章
- codeforces B. A and B 找规律
Educational Codeforces Round 78 (Rated for Div. 2) 1278B - 6 B. A and B time limit per test 1 secon ...
- python爬虫学习(5) —— 扒一下codeforces题面
上一次我们拿学校的URP做了个小小的demo.... 其实我们还可以把每个学生的证件照爬下来做成一个证件照校花校草评比 另外也可以写一个物理实验自动选课... 但是出于多种原因,,还是绕开这些敏感话题 ...
- 【Codeforces 738D】Sea Battle(贪心)
http://codeforces.com/contest/738/problem/D Galya is playing one-dimensional Sea Battle on a 1 × n g ...
- 【Codeforces 738C】Road to Cinema
http://codeforces.com/contest/738/problem/C Vasya is currently at a car rental service, and he wants ...
- 【Codeforces 738A】Interview with Oleg
http://codeforces.com/contest/738/problem/A Polycarp has interviewed Oleg and has written the interv ...
- CodeForces - 662A Gambling Nim
http://codeforces.com/problemset/problem/662/A 题目大意: 给定n(n <= 500000)张卡片,每张卡片的两个面都写有数字,每个面都有0.5的概 ...
- CodeForces - 274B Zero Tree
http://codeforces.com/problemset/problem/274/B 题目大意: 给定你一颗树,每个点上有权值. 现在你每次取出这颗树的一颗子树(即点集和边集均是原图的子集的连 ...
- CodeForces - 261B Maxim and Restaurant
http://codeforces.com/problemset/problem/261/B 题目大意:给定n个数a1-an(n<=50,ai<=50),随机打乱后,记Si=a1+a2+a ...
- CodeForces - 696B Puzzles
http://codeforces.com/problemset/problem/696/B 题目大意: 这是一颗有n个点的树,你从根开始游走,每当你第一次到达一个点时,把这个点的权记为(你已经到过不 ...
- CodeForces - 148D Bag of mice
http://codeforces.com/problemset/problem/148/D 题目大意: 原来袋子里有w只白鼠和b只黑鼠 龙和王妃轮流从袋子里抓老鼠.谁先抓到白色老鼠谁就赢. 王妃每次 ...
随机推荐
- weexplus监听android返回按钮
看见了平台 https://weexplus.github.io/doc/mo-kuai/pageye-mian-kong-zhi-566829.html的这段代码 var page=weex.req ...
- Godot的几个附加脚本和进行继承时比较特别的特性
注: 这是在Godot4.0中总结出的内容,并且语言是C#. 特别的,下面有的特性和C#关系比较大. 基本特性 在Godot中,为某个节点编写特别的代码时,需要为节点新建脚本,或引用已有脚本. 引用脚 ...
- OSPF 多区域配置实验
实验拓扑 实验需求 按照图示配置 IP 地址和loopback 接口 按照图示分区域配置 OSPF ,实现全网互通 为了路由结构稳定,要求路由器使用环回口作为 Router-id 在AR3上配置静默接 ...
- [ARM汇编]计算机原理与数制基础—1.1.1计算机的基本原理
计算机是一种能够根据指令集自动.高速处理数据的现代化设备.它的基本原理可以总结为:输入.存储.处理和输出数据.接下来,我们将详细介绍这些基本原理. 输入 计算机通过输入设备(如键盘.鼠标等)接收外部数 ...
- Gitlab恢复数据报错解决方法
背景 在Gitlab迁移恢复数据出现must be owner of extension plpgsql解决方法:在做gitlab迁移时,按正常Gitlab备份数据gitlab-rake gitlab ...
- Solon Web 也支持响应式开发了?!
"solon.web.flux" 是 solon v2.3.6 新推出的生态插件,为 solon web 提供响应式接口支持 (io.projectreactor) .为什么叫这个 ...
- pta第三阶段题目集
(1)前言 pta第三阶段作业中,主要包含了如下的主要内容: 1.全程贯穿了课程设计的程序,每一次都是上一次的迭代和修改,难度较大,中间涉及到先是类与类之间的多态和继承关系,后面的修改中,转变为了组合 ...
- 关于SQL SERVER ROW_NUMBER(),RANK(),DENSE_RANK() 的排序和分页查询问题
经常接触SQL SERVER 的朋友来说,排序是经常遇见的问题,有的人还会傻傻自己写排序,比如用循环去写,当然这就比较难受 今天就给大家介绍一下SQL SERVER 自带的排序,共有三种,分别为ROW ...
- 聊聊JVM虚方法表和方法调用
作者:小牛呼噜噜 | https://xiaoniuhululu.com 计算机内功.源码解析.科技故事.项目实战.面试八股等更多硬核文章,首发于公众号「小牛呼噜噜」 大家好,我是呼噜噜,好久没更新文 ...
- Hexo博客Yilia主题添加相册功能,丰富博客内容,Next等其他主题可以参考
实现思路 1.在主页上必须有一个可供点击的相册连接 2.要用 hexo 生成一个photos.html文件 3.photos.html中的图片数据来源?因为这是一个静态页面所有要有一个 json文件 ...