2019年安徽大学ACM/ICPC实验室新生赛(公开赛)D 不定方程
2024-09-04 22:50:48
题目链接:https://ac.nowcoder.com/acm/contest/2720/D
题意:对于 ax = by = c ,给出 x, y 求符合条件的 a, b, c 且 c 为最小的解,不满足条件输出 -1。
idea:容易看出 c 为x, y 的最小公倍数。设最小公倍数为 s ,所以 a = s / x,b = s / y。因为 s = x * y / __gcd(x,y) ,所以 a = y / __gcd(),b = x / __gcd(),所以 x 和 y 一定互质。若__gcd(x, y) != 1,即可输出 -1。否则为最小公倍数。
当时每想出来判断 - 1 的情况,擦
代码:
#include <bits/stdc++.h> using namespace std;
typedef long long ll;
ll t, x, y, ans; int main()
{
scanf("%lld",&t);
while (t -- )
{
scanf("%lld%lld",&x,&y);
ll s = __gcd(x, y);
if (s != ) cout << "-1" << endl;
else cout << y / s << " " << x / s << " " << x * y / s << endl;
}
return ;
}
最新文章
- Basic linux command-with detailed sample
- Query 一些简单的效果
- git管理maven项目实现
- nginx反向代理+缓存开启+url重写+负载均衡(带健康探测)的部署记录
- 一般处理程序 ashx中使用外部Session 出现不存在 解决方案
- 在centos6.5上面mount微软系统上安装ftp服务器
- java数据类型图:
- java连接远程服务器之manyged-ssh2 (windows和linux)
- sae crop 文档
- vSphere文档中心
- Docker学习笔记(4) — 开启Docker远程访问
- Android_Jar mismatch! Fix your dependencies
- 图解TCP三次握手
- dubbo 中文官网
- python学习day3 编程语言分类 变量 格式化输出
- java基础-day8
- Spark编程指南
- Alpha 冲刺报告3
- ReactNative For Android 框架启动核心路径剖析
- 字节码执行方式--解释执行和JIT