uva11889 - Benefit 数论

从PSDK到ROS节点:实战GPS数据发布与CMake配置 本文详细介绍了如何从大疆PSDK获取GPS数据并封装为ROS节点的实战过程,包括PSDK编译、GPS数据订阅、ROS节点实现及CMake配置优化。通过具体代码示例和调试技巧,帮助开发者快速实现无人机传感器数据与ROS系统的集成,提升开发效率。 阅读详情

Benefit 

Recently Yaghoub is playing a new trick to sell some more. When somebody gives himA Tomans, hewho never has appropriate changes, asks forB Tomans such that lowest common multiple of A andB equals toC and he will pay back a round bill. Or otherwise take some snack instead of theremaining of his money. He believes that finding such a number is hard enough that dissuadesstudents from paying that.

You should write a program that help poor students giving the appropriate amount of money toYaghoub. Of course if there are several answers you go for students' benefit which is the lowest ofthem.

Input 

The first line begin with an integer T (T$ \le$100000), the number of tests. Each test that comes in aseparate line contains two integers A and C (1$ \le$A,C$ \le$107).

Output 

Print the lowest integer B such that LCM(A, B) = C in a single line. If no such integer exists, print "NO SOLUTION" instead. (Quotes for clarity)

Sample Input 

3
2 6
32 1760
7 16

Sample Output 

3
55
NO SOLUTION


  给出A,C=lcm(A,B),求最小的B,如果没有输出NO SOLUTION。

  首先如果C不是A的倍数,那么肯定不行。

  A*B=gcd(A,B)*lcm(A,B),则C/A=B/gcd(A,B).

  设:

   lcm(A,B)=x^p1*y^p2*z^p3...

   gcd(A,B)=x^q1*y^q2*z^q3...

   A=x^m1*y^m2*z^m3...

   B=x^n1*y^n2*z^n3...

   B'=C/A=B/gcd(A,B)=x^k1*y^k2*z^k3...

   其中:

   p1=max(m1,n1),p2=max(m2,n2),p3=max(m3,n3)...

   q1=min(m1,n1),q2=min(m2,n2),q3=min(m3,n3)...

   k1=n1-q1,k2=n2-q2,k3=n3-q3...

  若x^m1和x^k1的gcd为1的话,说明m1=0或者是k1=0。如果m1=0,说明x这一项只有B有,B‘的这一项和B的这一项相等,则n1=k1。如果k1=0,n1=q1,又因为q1=min(m1,n1),所以n1<=m1,p1=m1,所以B’的x项为k1是满足的。如果x^m1和x^k1的gcd不为1,则m1!=0,k1!=0,n1=k1+q1=k1+min(m1,n1)=k1+m1,也就是m1<=n1,那么lcm的x这一项应该又B决定,p1=n1。由于B‘的x系数k1=n1-m1,所以还要把B'乘上x^m1。

  后面每一项都用这个方法。

  那么怎么快速乘上所有需要乘的各个系数的m次方呢?求gcd(A,B'),如果不为1,就把B’乘上这个gcd,A除以这个gcd,继续循环,直到gcd为1。这样就能把A比B‘多出的部分都乘上了。好神奇的方法。。。

  

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<queue>
#include<cstdlib>
#define INF 0x3f3f3f3f
#define MAXN 10010
#define MAXM 15
#define MAXNODE 4*MAXN
#define pii pair<int,int>
using namespace std;
int T,A,C;
int gcd(int a,int b){
    return a%b?gcd(b,a%b):b;
}
int main(){
    //freopen("in.txt","r",stdin);
    scanf("%d",&T);
    while(T--){
        scanf("%d%d",&A,&C);
        if(C%A) printf("NO SOLUTION\n");
        else{
            int B=C/A,t=1,g;
            while((g=gcd(A,B))!=1){
                t*=g;
                A/=g;
            }
            printf("%d\n",B*t);
        }
    }
    return 0;
}


ROS水下仿真神器uuv_simulator:从零搭建水下机器人测试环境(附Gazebo配置全流程) 本文详细介绍了如何使用ROS和uuv_simulator从零搭建水下机器人仿真测试环境,包括Gazebo配置全流程。通过系统环境准备、水下世界构建、机器人模型定制开发等步骤,帮助开发者在虚拟海洋环境中高效验证算法,大幅降低研发成本。特别适合水下机器人研发人员参考。 阅读详情

相关推荐

手把手教你用X-AnyLabeling实现医学图像标注:从SAM模型选择到多边形优化全流程

本文详细介绍了如何使用X-AnyLabeling平台结合Med-SAM等专业模型实现医学图像的高效标注。从环境配置、模型部署到实战工作流,涵盖智能辅助标注、低对比度解决方案及团队协作方案,帮助医疗从业者大幅提升标注效率与质量。特别适合处理CT/MRI等医学影像的复杂标注需求。

weixin_29251131的博客 455

UVA - 1634 The Picnic (dp+几何)

问题 m个点,选出若干个,形成凸多边形,使得内部没有点(边界上可以有)。输入点的坐标各不相同,且至少有三个点不共线 分析 这题看上去没什么思路,但有一些问题值得思考。 两个问题,如何确保是一个凸多边形? 如何确保无后效性? 遍历点i,把i作为凸多边形的左下角的点,然后将i右上方的点存入数组 dis:计算距离 cmp 使得点按照**逆时针(别看反了)**排列,a,b,O三点共线按照距离从小到大排列 ...

zpf1998的博客 496

保姆级教程:在RK3588开发板上编译带MPP硬件加速的FFmpeg(含完整依赖库配置)

本文提供在RK3588开发板上编译支持MPP硬件加速的FFmpeg的详细教程,涵盖交叉编译环境搭建、MPP框架及依赖库配置,最终实现4K视频硬件编解码性能优化。通过实战步骤和性能对比,展示如何充分发挥RK3588的硬件加速能力。

weixin_30839881的博客 418

【索引】《算法竞赛入门经典(第二版)》第九章-例题及习题题目与部分题解

虽然题解很少(只占所有题的27%QAQ),但我会一直更新。 例题 9-1 UVa 1025-A Spy in the Metro 9-2 UVa 437-TheTower of Babylon 9-3 UVa 437-Tour 9-4 UVa 116-Unidirectional TSP 9-5 UVa 12563-Jin Ge Jin Qu [h]ao 9-6 UVa 11400...

IDDFS 485

系统安装、qt配置、安装pcie驱动

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 安装Linux系统指定:ununtu20.04并配置相关软件环境 前言 提示:这里可以添加本文要记录的大概内容: ununtu20.04、Qt 5.9.0、pcie驱动 提示:以下是本篇文章正文内容,下面案例可供参考 一、安装系统 制作系统盘(win10),在开机时按相应键进入BIOS,(华硕需要先改配置启动->CSM->开启->第一个选项选第一个或第二个),等待即可 进入后按照https://www.sysgeek.

weixin_44832804的博客 2204

hcaptcha-challenger:基于本地AI模型自动破解验证码的工程实践

验证码作为区分人类与机器的经典安全机制,其核心原理是通过图像识别、行为分析等交互式挑战来阻挡自动化程序。传统绕过方法依赖第三方打码平台或脚本,存在成本高、稳定性差的问题。随着多模态大语言模型和计算机视觉技术的发展,本地化AI求解成为新的技术方向,它通过集成YOLO、ResNet等模型,在本地完成图像语义理解,实现了高隐私、低成本、可进化的验证码自动化解决方案。这种范式尤其适用于需要大规模稳定处理网页交互的场景,如电商数据采集和社交媒体管理。hcaptcha-challenger项目正是这一理念的工程实践,它

weixin_42587866的博客 1025

UVa 11889 最小公倍数

vjudge

772

INMP441麦克风避坑指南:为什么你的I2S录音总有杂音?(附示波器调试技巧)

本文针对INMP441麦克风与ESP32等MCU通过I2S接口连接时常见的录音杂音问题,提供了一套系统的硬件调试指南。文章深入剖析了电源纹波、信号完整性、接地环路及时钟抖动四大噪声根源,并详细讲解了如何使用示波器进行逐层排查,给出了增加LC滤波、串联阻尼电阻、优化布局布线等切实可行的解决方案,帮助开发者从根本上提升音频质量。

k0l1m2n3o的博客 1021

UVA - 11889 Benefit【LCM】

Recently Yaghoub is playing a new trick to sell some more. When somebody gives him A Tomans, he who never has appropriate changes, asks for B Tomans such that lowest common multiple of A and B equal

DTL66的博客 467

史上最全的Logisim运算器实验教程(基于华中科技大学计算机组成原理实验)

本博客是实现了Logisim的运算器设计,有具体的运算器设计的思路和运算器设计的电路,适合一步一步的按照思路做。

qq_62325622的博客 4万+

Proxmox VE(PVE)与UPS联动配置:实现智能断电保护方案

本文详细介绍了为Proxmox VE (PVE)服务器配置UPS智能断电保护的完整方案。通过安装和配置apcupsd软件,实现PVE与UPS的联动,可在市电中断、电池电量不足时自动触发安全关机流程,有效保护虚拟机数据与服务连续性。文章涵盖了硬件选择、软件配置、策略设定及实战测试指南,并扩展了网络共享UPS的高级应用。

python9snake的博客 507

UVA11889:Benefit(已知LCM和其中一个数,求另一个数)

Recently Yaghoub is playing a new trick to sell some more. When somebody gives him A Tomans, he who never has appropriate changes, asks for B Tomans such that lowest common multiple of A and B equal

ACM!荣耀之路! 2026

YOLOv11改进策略【损失函数篇】| 通过辅助边界框计算IoU提升检测效果(Inner_GIoU、Inner_DIoU、Inner_CIoU、Inner_EIoU、Inner_SIoU)

为了弥补现有 IoU 损失在不同检测任务中泛化性弱和收敛速度慢的问题,·Inner-IoU·通过引入比例因子 “ratio” 来控制辅助边界框的尺度大小,利用不同尺度的辅助边界框来计算损失,从而加速边界框回归过程。

Limiiiing的博客 3889

UVa 11889 Benefit (数论)

UVa 11889 Benefit题目大意:给两个整数A和C,求最小的整数B使得lcm(A,B)=C.若无解,输出”NO SOLUTION”(不含引号).题目分析:显然可知,若C%A!=0,则无解. 对于有解的情况,如下 设A=g∗p1B=g∗p2C=g∗p1∗p2A=g*p_1\\B=g*p_2\\C=g*p_1*p_2 要使lcm(A,B)=Clcm(A,B)=C,则p1与p2p_1与p_

Continue 651

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

uva 11889 - Benefit(数论)

题目链接:uva 11889 - Benefit

不慌不忙、不急不躁 1018

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

[UVa 11889] Benefit (基础数论+GCD+LCM)

UVa - 11889 已知 A,C,求最小的 B使得 LCM(A, B) = C 首先如果 A不能整除 C,则无解 由 lcm(A,B)=C=A∗Bgcd(A,B)lcm(A,B)=C = \frac {A*B} {gcd(A, B)} 得 CA=Bgcd(A,B)\frac C A = \frac B {gcd(A,B)} 设 gcd(A,B)=Dgcd(A,B)=D,A=A′∗D

MisDeer's blog 538

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

UVA 11889 - Benefit(数论)

题目链接:11889 - Benefit

Remilia's 989

UVA11889 Benefit (数论)

  题意 给一个A一个C,求最小的B, 满足A和B的最小公倍数是C。 思路来源 自己的脑洞 题解 AC了之后看了看网上的题解 感觉比较沙雕 还是自己总结一发吧 先令B=C/A,注意到C=A*B/gcd(A,B) 如果gcd(A,B)=1,那么B显然即为所求, 如果gcd(A,B)不为1,不断地,令A/=gcd(A,B),再去令B=C/A, 判断A和B是否互质,互质输出B...

小衣同学的博客 294

UVa 11889 - Benefit (数论)

Benefit  Recently Yaghoub is playing a new trick to sell some more. When somebody gives him A Tomans, he who never has appropriate changes, asks for B Tomans such that lowest common mul

zhaosdfa 627

Benefit---UVA11889最小公倍数(两种方法)

UVA - 11889 题目链接:https://vjudge.net/contest/321024#problem/B Recently Yaghoub is playing a new trick to sell some more. When somebody gives him A Tomans, he who never has appropriate change...

孤风的博客 469

UVA11889 Benefit

lcm(A,B)=C 已知A和C求B,已知lcm=A*B/GCD  先将C除于A发现对于B而言我们多除了一个GCD 然后就求出多除的因子,然后乘回去就可以了   Benefit  Recently Yaghoub is playing a new trick to sell some more. When somebody giv

1327

UVA 11889 Benefit

题目链接点这儿

御坂美琴o((≧▽≦o) 977

UVa11889 Benefit

我还是很想了一会儿,大概有20min

QWsin的博客 784

AMD Ryzen 3 3200G APU性能实测:集成显卡能否满足日常与游戏需求?

集成显卡作为现代处理器的重要组件,通过共享系统内存实现图形处理功能。其工作原理是将GPU核心与CPU集成在同一芯片上,有效降低系统成本和功耗。在入门级计算领域,集成显卡的技术价值在于为预算有限的用户提供完整的计算体验。以AMD Ryzen 3 3200G搭载的Radeon Vega 8为例,这款APU在办公应用、4K视频播放和轻度游戏等场景表现突出。通过CPU-Z和Cinebench测试可见,其四核心设计在多媒体处理和日常多任务中保持稳定性能。结合双通道内存配置优化,Vega 8显卡在《英雄联盟》等电竞游戏

aoe41606的博客 374

[Uva 11889] Benefit

题目描述 给定两个正整数\(A和C\),若存在\(B\),满足\(lcm(A,B)=C\),则输出满足条件的最小的\(B\),若不存在,则输出NO SOLUTION。 分段得分、强化数据版本在此处:强化版题目,这里无解输出\(-1\)。 题目解答 无解情况 首先分析不存在的情况,既然\(C\)是最小公倍数了,是倍数,那么必定有\(A|C\),所以首先判断\(CmodA\),无解情况就弄完...

GKX328131442的博客 238

UVa 11889 - Benefit

題目:已知兩個數的最小公倍數和其中一個數,求另一個數。 分析:數論,構造。本題可以才用枚舉的方式求解,這裡利用數論的方法。             設a = g * A0,b = g * B0,其中gcd(A0, B0) = 1;             如果gcd(c/A0, A0) = gcd(B0 * g, A0) = 1,则b = B0可以滿足題意;             否則g

小白菜又菜 1388
上一篇: uva1407 - Caves 树形DP
下一篇: poj3041 Asteroids 最小点覆盖 二分图
小小小小葱
博客等级 码龄14年 22粉丝 266原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值