Codeforces Round #752 (Div. 1) B. Moderate Modular Mode

news2024/9/26 10:02:27

翻译:

谁有两个偶数𝑥和𝑦。帮助他找到一个整数𝑛,使1≤𝑛≤2⋅1018,且𝑛mod𝑥=𝑦mod𝑛。这里,𝑎mod𝑏表示𝑎除以𝑏后的余数。如果有多个这样的整数,则输出any。可以证明,在给定的约束条件下,这样的整数总是存在的。

输入
第一行包含一个整数𝑡(1≤𝑡≤105)——测试用例的数量。

每个测试用例的第一行也是唯一一行包含两个整数𝑥和𝑦(2≤𝑥,𝑦≤109,都是偶数)。

输出
对于每个测试用例,请打印满足命题条件的单个整数𝑛(1≤𝑛≤2⋅1018)。如果有多个这样的整数,则输出any。可以证明,在给定的约束条件下,这样的整数总是存在的。

例子
inputCopy
4
4 8
4个2
420 420
69420 42068
outputCopy
4
10
420
9969128
请注意
在第一个测试用例中,4mod4=8mod4=0。

在第二个测试用例中,10mod4=2mod10=2。

在第三个测试用例中,420mod420=420mod420=0。

思路:

很明显分为两种情况,x>=y,x<y。当x>=y的时候,n可以直接取得k*x+y,这样两边都是y;另一种情况就比较麻烦,因为n mod x,所以最终值肯定是小于x的,y mod n,所以我们要从y%x入手,y%x=y-y/x*x,我们可以取整数 p,使得 p * x <= y,那么此时 p * x % x = 0,y % (p * x) = y - p * x,
由于 y 和 x 都是偶数,所以 y - p * x 一定也是一个偶数,
我们只需取 [p * x, y] 的中值即可,
也就是说 n = y - (y - p * x) / 2,
换句话说,此时 y % (p * x) = y - p * x 等价于 y % x,那么 n = y - y % x / 2

代码:

#include <iostream>
#include <algorithm>
#include <string.h>
#include <string>
#include <math.h>
#include <stdio.h>
#include<vector>
#include<queue>
#include<map>
#include<set>
#include<tuple>
#include<numeric>
using namespace::std;
typedef long long  ll;
int n,t;
ll x,y;
void solv(){
    cin>>x>>y;
    if (y<x) {
        printf("%lld\n",x+y);
    }
    else if (x==y){
        printf("%lld\n",x);
    }
    else{
        printf("%lld\n",(y/x*x+y)/2);
    }
}
int main(){
    ios::sync_with_stdio(false);
    cin.tie(); cout.tie();
    cin>>t;
    while (t--) {
        solv();
    }
    return 0;
}

 


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/56329.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

夯实算法-整数转罗马数字

题目&#xff1a;LeetCodeLeetCode 罗马数字包含以下七种字符&#xff1a; I&#xff0c; V&#xff0c; X&#xff0c; L&#xff0c;C&#xff0c;D 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D …

Linux操作系统~匿名管道和命名管道的使用及其原理分析

目录 1.匿名管道 &#xff08;1&#xff09;.匿名管道的原理 &#xff08;2&#xff09;.pipe接口的使用 如果只写不读&#xff08;求管道的大小&#xff09; &#xff08;3&#xff09;.匿名管道五个特点 &#xff08;4&#xff09;.匿名管道的四种情况 3.命名管道 &a…

世界杯之用Java实现随机胜平负

一、本章猜测随机数首先需要用到Scanner语句&#xff0c;对用户需要几组胜平负数量进行猜测&#xff0c;说动用到几组肯定要用到for循环了&#xff0c;还有要实现随机&#xff0c;就需要用到Math方法&#xff0c;进行随机抽取。 1.Scanner 首先使用Scanner语句抓取用户…

MATLAB算法实战应用案例精讲-【工具篇】运筹优化工具OR-TOOLS(补充篇)(附实战案例及代码实现)

前言 本文为【工具篇】运筹优化工具OR-TOOLS(附实战案例及代码实现)的补充篇。 OR-Tools是一个用于优化的开源软件套件,用于解决车辆路径、流程、整数和线性规划以及约束编程等世界上最棘手的问题。同时OR-Tools提供了C++,Python,Java,.NET的接口,同时提供统一接口封装来…

为你揭秘拼购为什么是破产老板手中的最后一根稻草?

拼购&#xff0c;已经成为了电商平台自主传播的一种营销活动&#xff0c;通过拼团可以促成更多的成交量&#xff0c;但拼团也不是这样简单的放在那里就能有客户进来参与&#xff0c;其中还有很多细节上面的地方需要我们好好探究。这个拼购模式和我们之前见过的拼多多拼团、拼购…

什么蓝牙耳机适合realme手机?适合realme手机的高端蓝牙耳机推荐

根据网络调查数据显示&#xff0c;市面上的耳机需求量在不断增加&#xff0c;随着智能手机的普及&#xff0c;耳机作为炙手可热的产品&#xff0c;尤其是网易云、全民K歌&#xff0c;直播的流行&#xff0c;消费者对于耳机的需求不仅仅是听歌了&#xff0c;有线耳机也逐渐被无线…

【Matplotlib绘制图像大全】(五):饼图

前言 大家好,我是阿光。 本专栏整理了《Matplotlib绘制图像大全》,内包含了各种常见的绘图方法,以及Matplotlib各种内置函数的使用方法,帮助我们快速便捷的绘制出数据图像。 正在更新中~ ✨ 🚨 我的项目环境: 平台:Windows10语言环境:python3.7编译器:PyCharmMatp…

风靡互联网关键词 Web3.0 | 区块链 | 比特币 | 元宇宙……

&#x1f497;wei_shuo的个人主页 &#x1f4ab;wei_shuo的学习社区 &#x1f310;Hello World &#xff01; Web web是互联网的总称&#xff0c;全称为World Wide Web&#xff0c;缩写WWW &#xff0c;即全球广域网&#xff0c;也称为万维网&#xff0c;它是一种基于超文本和H…

007.复原 IP 地址

1.题目链接&#xff1a; 93. 复原 IP 地址 2.解题思路&#xff1a; 2.1.题目要求&#xff1a; 给定一串只包含数字的字符串s&#xff0c;返回所有让 s 构成 有效IP地址 的数字组合。 有IP地址&#xff1a; 4个 [0,255] 范围内的数字 组成&#xff0c;并且整数之间用 " …

绿源:“老大哥”冲刺IPO,新的故事如何讲?

又一家老牌电动两轮车企业“开”向了资本市场。 11月22日&#xff0c;绿源集团控股&#xff08;开曼&#xff09;有限公司&#xff08;以下简称“绿源集团”&#xff09;正式向港交所递交招股说明书&#xff0c;拟主板挂牌上市&#xff0c;中信建设国际担任独家保荐人&#xf…

ctfshow node.js专题

文章目录web334web335web336web337web338web339web340web341web342、web343web334 给了附件&#xff0c;然后进入后发现是一个登录框。 在附件中知道了账号密码&#xff0c;但是却无法登录。 先看user从哪里获取&#xff1a; var user findUser(req.body.username, req.bod…

虹科案例 | 订单自动分拣效率居然这么高?

Background 背景 过去&#xff0c;一家自动仓储和检索系统&#xff08;AS/RS&#xff09;梭子解决方案的制造商依靠车轮编码器来指示梭子沿轨道的位置。虽然这种解决方案已经使用了多年&#xff0c;也将继续使用&#xff0c;但它可能容易出现定位错误&#xff0c;这通常是由车…

[附源码]Python计算机毕业设计SSM考勤管理系统(程序+LW)

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

Kotlin高仿微信-第35篇-支付-二维码收款(二维码)

Kotlin高仿微信-项目实践58篇详细讲解了各个功能点&#xff0c;包括&#xff1a;注册、登录、主页、单聊(文本、表情、语音、图片、小视频、视频通话、语音通话、红包、转账)、群聊、个人信息、朋友圈、支付服务、扫一扫、搜索好友、添加好友、开通VIP等众多功能。 Kotlin高仿…

【python可视化】python编码规范、标准库与扩展库对象的导入与使用

&#x1f64b;‍ 哈喽大家好&#xff0c;本次是python数据分析、挖掘与可视化专栏第一期 ⭐本期内容&#xff1a;python编码规范、标准库与扩展库对象的导入与使用 &#x1f3c6;系列专栏&#xff1a;Python数据分析、挖掘与可视化 &#x1f44d;欢迎大佬指正&#xff0c;一起学…

嵌入式分享合集115

一、数字万用表电压、电流、电阻、电容、频率、电池、二极管等测量方法 数字万用表可用来测量直流和交流电压、直流和交流电流、电阻、电容、频率、电池、二极管等等。整机电路设计以大规模集成电路双积分A/D转换器为核心&#xff0c;并配以全过程过载保护电路&#xff0c;使之…

动态改变列数做分页

【问题】 My question is: How can I prepare template which will receive various number of columns in such way, that if they won’t fit to page, next columns would be printed on a second page. For example If I have 10 columns, but only 6 fit to the page 1,…

[附源码]计算机毕业设计springboot万佳商城管理系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

33K Star?这才是程序员需要的神器。。。

程序员宝藏库&#xff1a;https://gitee.com/sharetech_lee/CS-Books-Store 你想要的&#xff0c;这里都有&#xff01; 作为程序员用的比较多的工具是什么&#xff1f; 我觉得搜索引擎绝对能名列前茅。 在开发过程中&#xff0c;总会遇到这样或者那样的问题超出我们自身的知…

【愚公系列】华为云系列之ModelArts+AppCube带你识别101种西式美食【我的低代码AI体验】

文章目录前言1.ModelArts是什么2.AppCube是什么一、华为云系列之ModelArtsAppCube带你识别101种西式美食1. AI Gallery 订阅模型及部署2. 获取访问秘钥3. 使用示例安装包创建 AppCube 应用4. 创建 ModelArts 连接器前言 1.ModelArts是什么 ModelArts是面向AI开发者的一站式开…