HDOJ--2504又见GCD
2016-07-20 11:04
211 查看
又见GCD
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u
Submit Status
Description
有三个正整数a,b,c(0<a,b,c<10^6),其中c不等于b。若a和c的最大公约数为b,现已知a和b,求满足条件的最小的c。
Input
第一行输入一个n,表示有n组测试数据,接下来的n行,每行输入两个正整数a,b。
Output
输出对应的c,每组测试数据占一行。
Sample Input
2
6 2
12 4
Sample Output
4
8
代码:
#include<stdio.h>
int GCD(int x,int y)
{
if(x%y==0)
return y;
else
return GCD(y,x%y);
}
int main()
{
int n,a,b,c;
scanf("%d",&n);
while(n--)
{
scanf("%d%d",&a,&b);
for(int i=b+1;;i++)
{
if(GCD(a,i)==b)
{
c=i;
break;
}
}
printf("%d\n",c);
}
return 0;
}
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u
Submit Status
Description
有三个正整数a,b,c(0<a,b,c<10^6),其中c不等于b。若a和c的最大公约数为b,现已知a和b,求满足条件的最小的c。
Input
第一行输入一个n,表示有n组测试数据,接下来的n行,每行输入两个正整数a,b。
Output
输出对应的c,每组测试数据占一行。
Sample Input
2
6 2
12 4
Sample Output
4
8
代码:
#include<stdio.h>
int GCD(int x,int y)
{
if(x%y==0)
return y;
else
return GCD(y,x%y);
}
int main()
{
int n,a,b,c;
scanf("%d",&n);
while(n--)
{
scanf("%d%d",&a,&b);
for(int i=b+1;;i++)
{
if(GCD(a,i)==b)
{
c=i;
break;
}
}
printf("%d\n",c);
}
return 0;
}
相关文章推荐
- 15 张令人喷饭的 IT 趣图(第2季)
- Android简单实现启动画面的方法
- uc/os-iii学习笔记-资源管理(中断、信号、信号量、互斥信号量)
- java入门第一季_1.8_static关键字
- 需要牢记的SPI总线知识
- 第17周 啊哈算法 图的遍历算法-最少转机
- Python layer
- 关于rem这个单位
- Entity framewok 如何实现多条记录作为一条取出, for xml path如何实现
- Tmux 的常用命令详解
- UVA 579-Clock Hands
- listview和gridView混用,点击失效问题
- win10和ubuntu双系统启动
- JDK1.7和JDK1.8新特性
- vector 中 erase 用法注意事项
- Scrapy安装指南(不需要安装Visual Studio和Mingw)
- 导mysql数据,遇到 longtext 类型,navicat导出会出现乱码
- UVA 10879-Code Refactoring
- poj 1190 ROADS
- Weird Shader Problem On OpenGLES 3.0