整数性质
时间限制:
500 ms | 内存限制:
65535 KB
难度:
1
-
描述
-
我们知道,在数学中,对于任意两个正整数a和b,必定存在一对整数s、t使得sa+tb=gcd(a,b)。
-
输入
-
多组测试数据。
每组数据输入两个非负整数a和b且a+b>0且a不等于b。
其中0<=a,b<100000。
输出
- 输出满足条件的 s 和 t 。 样例输入
-
2 4 3 8 737 635
样例输出
-
1 0 3 -1 193 -224
提示
- 运用欧几里得定理求得的才是正确答案。
-
多组测试数据。
import java.util.Scanner;
public class Main {
static int oneflag, twoflag;
public static void extend_Euclid(int onenum, int twonum) {
if (onenum == 0) {
oneflag = 0;
twoflag = 1;
return;
} else if (twonum == 0) {
oneflag = 1;
twoflag = 0;
return;
} else {
extend_Euclid(twonum, onenum % twonum);
int temp = oneflag;
oneflag = twoflag;
twoflag = temp - onenum / twonum * twoflag;
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()) {
int onenum = scanner.nextInt();
int twonum = scanner.nextInt();
extend_Euclid(onenum, twonum);
System.out.println(oneflag + " " + twoflag);
}
}
}