输入
输入数据会有多组数据。每组数据占一行。
每行有两个数字a和b,表示需要构造出阻值为a/b欧姆的电阻。
这里a,b有
1<=a,b<=1018
当a,b都等于0,输入结束,并且这组数据不需要处理。
输出
对于每一组数据,输出只占一行。
每行输出一个数字min,表示最少需要多少个1Ω的电阻可以组合出阻值为a/b欧姆电阻。
样例输入
1 2
2 1
0 0
样例输出
2
2
#include<stdio.h>
void Swap1(int *p,int *n);
int main()
{
int a,b,tmp=0;
int x;
scanf("%d%d",&a,&b);
if(a<b)
Swap1(&a,&b);
while (b!=0)
{
tmp+=a/b;
x=a%b;
a=b;
b=x;
}
printf("%d",tmp);
return 0;
}
void Swap1(int *p,int *n)
{
int z;
z=*p;
*p=*n;
*n=z;
}