A4773 | 次大公约数
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
小王和小明是两位热爱数学和编程的小学生。他们经常一起参加各种编程竞赛和数学挑战。有一天,他们的教授给他们出了一道有趣的题目:
"给定两个数,求出这两个数的次大公约数。如果这两个数没有次大公约数,请输出-1。"
小王和小明决定一起解决这个问题。他们知道,最大公约数(GCD)是一个常见的概念,但次大公约数对他们来说是一个新的挑战。他们决定先回顾一下最大公约数的求法,然后再思考如何找到次大公约数。
$\large{数据范围}$
- $1 \leq T \leq 100$
- $1 \leq a, b \leq 1000$
"给定两个数,求出这两个数的次大公约数。如果这两个数没有次大公约数,请输出-1。"
小王和小明决定一起解决这个问题。他们知道,最大公约数(GCD)是一个常见的概念,但次大公约数对他们来说是一个新的挑战。他们决定先回顾一下最大公约数的求法,然后再思考如何找到次大公约数。
$\large{数据范围}$
- $1 \leq T \leq 100$
- $1 \leq a, b \leq 1000$
输入格式
第一行输入一个整数 $T$,代表测试用例数目。
对于每一组测试用例,输入两个整数。$a, b$ 占一行。
对于每一组测试用例,输入两个整数。$a, b$ 占一行。
输出格式
对于每一组测试用例,输出一个整数占一行,代表 $a, b$ 的次大公约数。
输入输出样例
输入 #1
2 12 4 2 1
输出 #1
2 -1
测试用例 $1$ : $12$ 和 $4$ 的次大公约数为 $2$。
测试用例 $2$ : $2$ 和 $1$ 有最大公约数为 $1$,但是没有次大公约数, 所以输出 $-1$。
测试用例 $2$ : $2$ 和 $1$ 有最大公约数为 $1$,但是没有次大公约数, 所以输出 $-1$。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?